Microsoft MVP성태의 닷넷 이야기
TaskAwaiter 구현 질문 입니다. [링크 복사], [링크+제목 복사],
조회: 12723
글쓴 사람
C#스터디
홈페이지
첨부 파일
 

ICriticalNotifyCompletion 및 INotifyCompletion

위 두개의 인터페이스를 상속 받아서 TaskAwaiter 구조체를 구현 하였습니다.

TaskAwaiter 구조체는 GetAwaiter() 메서드를 통해 사용되고


자체적으로 커스텀된 Task를 구현하였는데요

궁금한 것이

ICriticalNotifyCompletion, INotifyCompletion 둘중 어떤 것을 상속받아 구현해야 하는지 궁금합니다.

일단 두개 다 상속받아 처리했을땐 항상 UnsafeOnCompleted(Action continuation) 메서드만 호출되는 것 같았습니다.

또한 INotifyCompletion만 구현 했을 경우는 당현하겠지만 OnCompleted(Action continuation) 메서드만 호출 되었구요

어떤 상황에서 둘다 사용해야 하는지 또는 어떤걸 사용 해야 하는지 궁금합니다.








[최초 등록일: ]
[최종 수정일: 1/12/2022]


비밀번호

댓글 작성자
 



2022-01-12 04시20분
도움말을 보면,

ICriticalNotifyCompletion.UnsafeOnCompleted(Action) Method
; https://learn.microsoft.com/en-us/dotnet/api/system.runtime.compilerservices.icriticalnotifycompletion.unsafeoncompleted

다음과 같은 주석을 볼 수 있습니다.

Unlike OnCompleted, UnsafeOnCompleted doesn't have to propagate ExecutionContext information.

그리고 저 말의 의미는 아래의 글을 읽어보시면 이해가 될 것입니다.

HttpContext.Current를 통해 이해하는 CallContext와 ExecutionContext
; https://www.sysnet.pe.kr/2/0/1608#unsafe_tp

그런데, 대단하시군요. ^^ 저는 예제 삼아 구현은 했어도,

C# - await을 Task 타입이 아닌 사용자 정의 타입에 적용하는 방법
; https://www.sysnet.pe.kr/2/0/11456

그걸 현실적으로 사용해 보려는 노력까지는 안 했습니다.
정성태

... 61  62  63  64  [65]  66  67  68  69  70  71  72  73  74  75  ...
NoWriterDateCnt.TitleFile(s)
979왕초보7/1/201117967Apache + IIS Redirect [2]
9776/16/201122272웹컨트롤 어느거 쓰는게 좋나요 [1]
976박성준6/13/201117756VS2008 Add-in 구현 관련 질문 [4]
972김길6/6/201120034메모리 해제 예외 처리 관련.. [2]
971강동원5/29/201117560firebird install건 [1]
970임동찬5/18/201118349ASP.net 솔루션 디버깅 관련 [1]
969이성환5/4/201120010WMI 를 사용하지 않고 하드웨어 정보를 가져올 수 없을까요? [3]
968김동미4/28/201119429안녕하세요 다시 한번 문의를 드립니다.. [2]파일 다운로드1
967임동찬4/22/201122170C# using문 관련 [9]
964김동미4/18/201119772wcf IsOneWay 속성관련 문의 입니다..
965정성태4/18/201121147    답변글 [답변]: wcf IsOneWay 속성관련 문의 입니다..
966김동미4/19/201118978        답변글 [답변]: [답변]: wcf IsOneWay 속성관련 문의 입니다.. [1]
963최재훈4/12/201117358wcf inactivityTimeout 설정시 문의 사항이 있습니다. [2]
962임동찬4/8/201116970TFS 사용관련 [1]
961임동찬4/7/201117334XSD & XML & XmlCodeGenerator [2]
960임동찬4/5/201118863XML Schema Editor [4]
959immm3/24/201116650로그인 연동 어려운 건가요? [1]
958꼭지3/3/201118697Supporting compressed request in WCF 3.5 [5]
957임동찬2/21/201119205WCF channel faulted 관련 [2]
956윤용한2/18/201122645WaitHandle.WaitOne 과 Stopwatch에 관한 질문 [3]
955최광욱2/17/201119309TFS 에서 소스 영구 제거 방법 [1]
954한장우2/16/201117028atl activeX 질문이요~ [1]
952박용운2/16/201117885IE8.0에서 BHO [1]
953박용운2/16/201117881    답변글 [답변]: IE8.0에서 BHO
951임동찬2/11/201117924WCF Service Reference [1]
950이성환2/9/201119370Windows application 프로젝트를 참조 했을 때 생성되는 실행파일을 직접 실행 불가능하도록 하고 싶습니다. [6]파일 다운로드1
... 61  62  63  64  [65]  66  67  68  69  70  71  72  73  74  75  ...