Microsoft MVP성태의 닷넷 이야기
비동기 함수를 사용하는 방법에 대한 질문입니다 [링크 복사], [링크+제목 복사],
조회: 10820
글쓴 사람
질문
홈페이지
첨부 파일
 

안녕하세요. C# 9.0 프로그래밍 책은 잘 보고 있습니다.

비동기 함수를 사용하는 방법에 있어 궁금증이 생겨서 문의를 남겨봅니다.

비동기 함수인 WorkAsync(); 가 있을때

[1]

await WorkAsync();

await Task.Run(async(() => await WorkAsync());

위 두 개의 사용 방식이 각각 다른 방식/위치에서 동작한다고 볼 수 있나요?

[2]

await Task.Run(()=> WorkAsync());

그리고 Task.Run을 사용할 때, async를 사용한 것과 아닌 것의 차이가 Fire & Forget 으로 알고 있는데
정작 Task.Run 내부에 async 형태를 사용하지 않더라도 밖의 await로 함수가 완료될 때를 기다리던데
위의 형태로 사용할때는 크게 상관없는건가요?

답변해주시면 감사드리겠습니다 __








[최초 등록일: ]
[최종 수정일: 7/20/2022]


비밀번호

댓글 작성자
 



2022-07-20 11시41분
일단, 다른 것들은 나중에 별도의 글로 자세하게 설명하겠습니다. 단지, [2]번의 질문은 뭔가 잘못 알고 계신 것 같은데요, "await로 함수가 완료될 때를 기다리던데"라고 했지만 테스트를 해보시면 실제로는 기다리지 않습니다. 만약 "기다린다"라고 테스트가 되었다면 그 코드를 전부 올려주시면 해석을 해드리겠습니다.
정성태

... 91  92  [93]  94  95  96  97 
NoWriterDateCnt.TitleFile(s)
137정성태4/7/200510136            답변글 [답변]: [답변]: [답변]: c# .Net 에 대한 문의좀 ^^ [WinForm 에서 UserControl로 작성된 폼을 호출하려는데....]
138김용국4/7/20059077                답변글 [답변]: [답변]: [답변]: [답변]: c# .Net 에 대한 문의좀 ^^ [WinForm 에서 UserControl로 작성된 폼을 호출하려는데....]
139김용국4/11/20059604                    답변글 잘 해결 되었습니다... 감사합니다 [한줄답변]
129김용국3/31/200510541SmartClient 배포와 관련해서 무엇이 빠졌는지 좀 알려주시면 감사하겠습니다....!파일 다운로드2
130정성태3/31/20059709    답변글 [답변]: SmartClient 배포와 관련해서 무엇이 빠졌는지 좀 알려주시면 감사하겠습니다....!
131김용국4/1/20059178        답변글 [답변]: [답변]: SmartClient 배포와 관련해서 무엇이 빠졌는지 좀 알려주시면 감사하겠습니다....!
132정성태4/1/20059347            답변글 [답변]: [답변]: [답변]: SmartClient 배포와 관련해서 무엇이 빠졌는지 좀 알려주시면 감사하겠습니다....!
133김용국4/1/20059473                답변글 [답변]: [답변]: [답변]: [답변]: SmartClient 배포와 관련해서 무엇이 빠졌는지 좀 알려주시면 감사하겠습니다....!
126구정모3/31/200510785이홈의 효과는 어떻게???
128정성태3/31/20059891    답변글 [답변]: 이홈의 효과는 어떻게???
124배재현3/30/20059880Smart Client 문제로 이렇게 질문을 하나 올리게 됐습니다.^^;;
125정성태3/30/20059352    답변글 [답변]: Smart Client 문제로 이렇게 질문을 하나 올리게 됐습니다.^^;;
121안연준3/23/20059265이벤트 관련 문제
122정성태3/23/20059146    답변글 [답변]: 이벤트 관련 문제
120안연준3/23/20059015정성태님.... 오프라인 문제 질문 입니다. [1]
123정성태3/23/20059238    답변글 [답변]: 정성태님.... 오프라인 문제 질문 입니다. [1]
117정준명3/21/200510154COM+ 메소드 작성시...
118정성태3/29/20059720    답변글 [답변]: COM+ 메소드 작성시... [1]
109김용국3/18/200510676IE에 Docking된 WinFormControl내의 특정 메소드에 값을 보내기 .. 잘 되기는 하는데 한가지 문제가 ...
112정성태3/19/20059837    답변글 [답변]: IE에 Docking된 WinFormControl내의 특정 메소드에 값을 보내기 .. 잘 되기는 하는데 한가지 문제가 ...
113김용국3/19/20059805        답변글 [답변]: [답변]: IE에 Docking된 WinFormControl내의 특정 메소드에 값을 보내기 .. 잘 되기는 하는데 한가지 문제가 ...
114정성태3/19/20059871            답변글 [답변]: [답변]: [답변]: IE에 Docking된 WinFormControl내의 특정 메소드에 값을 보내기 .. 잘 되기는 하는데 한가지 문제가 ...
115김용국3/21/20059280                답변글 [답변]: [답변]: [답변]: [답변]: IE에 Docking된 WinFormControl내의 특정 메소드에 값을 보내기 .. 잘 되기는 하는데 한가지 문제가 ... [1]
119김용국3/22/20059258                    답변글 [답변]: 정상태님 아주 잘 해결 되었습니다.... 감사합니다!
108guest3/17/20059414닷넷 프레임워크 배포
111정성태3/19/20059781    답변글 [답변]: 닷넷 프레임워크 배포
... 91  92  [93]  94  95  96  97