Microsoft MVP성태의 닷넷 이야기
await 2번 [링크 복사], [링크+제목 복사],
조회: 6909
글쓴 사람
강성욱 (dnr2144 at gmail.com)
홈페이지
첨부 파일
 

안녕하세요. async / await를 공부하다가 이해가 안 돼서 질문드립니다. 제가 한 이해가 맞나 확인받고 싶습니다.

async 키워드를 쓴 메서드를 호출하는 스레드가 주 스레드라고 하겠습니다. 그럼 await 키워드가 나타나기 전까지의 명령은 주 스레드가 실행시키는 것이고 await 이후의 명령은 Task로 인해 스레드가 생성돼서 별도의 흐름으로 실행되는 게 맞습니까? 만약 그렇다면 하나의 메서드에서 await 가 두 개 이상 있다면 스레드 흐름도 두 개가 생기는 건가요? C# 7.1의 682페이지 내용이 이해가 잘 안 됩니다. 저는 메서드 내에서 await가 1개면 이해가 되는데 2개 이상이면 실행 흐름이 이해가 잘 안 됩니다....








[최초 등록일: ]
[최종 수정일: 3/27/2020]


비밀번호

댓글 작성자
 



2020-03-28 03시41분
주 스레드가 await 이전의 코드를 실행 중이다가, await을 만나게 되면 그 이후의 코드는, 1) 스레드 풀에 있던 스레드 2) 사용자가 일부러 만든 Task 3) 또는 주 스레드가 실행할 수 있습니다. 1 ~ 3번의 방법은 사용자가 지정할 수 있는데, 일반적으로 지정하지 않은 기본 값 상황이라면 1)번의 방법대로 선택된 스레드가 await 이후의 코드를 실행하게 됩니다.

이후 await이 몇 개가 나오던지에 상관없이 위의 규칙은 동일합니다.

(위의 답변을 읽고 여전히 이해가 안 된다면 또 그 부분에 대해서 질문을 남겨 주세요. ^^)
정성태

... 46  47  [48]  49  50  51  52  53  54  55  56  57  58  59  60  ...
NoWriterDateCnt.TitleFile(s)
3634Hyun...11/2/201511179c# 에서 webkit browser에서 webgl을 이용하는 사이트에 접속이 안됩니다. [1]
3633힘찬도약10/31/201511822mysql insert where not exists [6]
3632힘찬도약10/27/201512481C# Lock 관련해서 질문드립니다. [6]
3655iwc11/30/201510581    답변글 [답변]: C# Lock 관련해서 질문드립니다.
3631강준10/26/201513418iis 8.5 preload 기능에 대해 질문이 있습니다. [9]
3630김정훈10/25/201511831몬티홀 게임 관련 질문 [1]
3629pooq10/23/201512333리플렉션 관련해서 질문 입니다. [3]
3628최영민10/22/201511337스마트 클라이언트 로딩속도 문의입니다. [3]
3627양주호10/22/201511134C#으로 컨버팅 하려고 하는데요... [1]
3626조성진10/21/201512279책보고 첫번째 예제부터 문제가 생기네요 ^^; [4]파일 다운로드1
3623Bere...10/19/201512298질문이라기 보단... [2]
3625Bere...10/20/201511807    답변글 [답변]: 질문이라기 보단... [2]파일 다운로드1
3621힘찬도약10/18/201511911[C# 6.0]multi threading과 ui control [9]
3624힘찬도약10/19/201511812    답변글 [답변]: [C# 6.0]multi threading과 ui control [6]파일 다운로드1
3620popo10/13/201510765WPF의 datagrid, listview 컨트롤 관련 질문 입니다. [1]
3619링크의 ...10/12/201515305OCX 로드 관련 질문입니다. [5]파일 다운로드1
3616수요일밥...10/7/201515663몇 가지 오류 (2) [6]
3615김응규10/7/201511035다시한번 질문 드립니다. (이번엔 자세하게 기술했습니다.) [1]
3614김응규10/6/20159898안녕하세요. wcf net.tcp 관련 질문 하나만 올려요~~ [4]
3613강준10/5/201514637IIS Application Pool 시작/중단 에 대한 이벤트 로그는 어디에 남나요??? [2]
3612심심한일...10/4/201516610몇 가지 오류 [4]
3611나그네9/30/201511013안녕하세요 답글을 이제 보았습니다. [3]
3608기차니9/21/201511746컬럼이 많은 데이터그리드에서 정렬 할 때 속도가 느립니다. [3]
3609기차니9/22/201511887    답변글 [답변]: 컬럼이 많은 데이터그리드에서 정렬 할 때 속도가 느립니다. [1]파일 다운로드1
3610기차니9/23/201512759        답변글 [답변]: [답변]: 컬럼이 많은 데이터그리드에서 정렬 할 때 속도가 느립니다. [5]파일 다운로드1
3606guest9/20/201511362확장 클래스 네이밍 규칙은 어떻게 하시나요? [1]
... 46  47  [48]  49  50  51  52  53  54  55  56  57  58  59  60  ...