async
및 await
키워드는 자신의 응용 프로그램이 더 반응하지 않습니다. Task
객체를 더 편리하게 반환하는 메서드를 호출하고 처리하기 만하면 됩니다. 백그라운드 스레드 를 만들 async
거나 await
실제로 사용하려면 다음과 같은 사용법과 결합해야합니다.
Task.Start()
-을 사용하여 주어진 작업을 시작합니다 TaskScheduler
.
- PLINQ-일련의 작업을 병렬로 실행하고 작업을 반환합니다.
TaskCompletionSource
-비동기 작업을 처리하는 사용자 정의 방법. 내가 이것을 사용한 한 곳은 WebBrowser
컨트롤 에서 오는 이벤트를 처리하는 것이 었습니다 .
async
Win 8 API의 많은 기능과 같은 다른 방법.
즉, async
/ await
는 작업 기반 비동기 패턴 의 확장입니다 . 여기에서 많은 샘플을 포함하여 많은 정보를 찾을 수 있습니다 .
는 BackgroundWorker
사용하여 1 개 백그라운드 스레드 생성하는 윈폼 구성 요소입니다 이벤트 기반 비동기 패턴을 , 당신은 당신의 자신의 코드와 함께이 백그라운드 스레드에서 수행 된 작업 채울 수 있습니다 DoWork
이벤트 핸들러를. 일반적으로 Microsoft는 더 이상이 패턴을 사용하지 않는 것이 좋습니다 ( 여기 페이지 하단 참조 ). 이미 익숙한 경우 여전히 간단한 옵션 일 수 있습니다.
언급되지 않은 또 다른 옵션 은 .NET 용 Reactive Extensions입니다 . 앱에 응답 성을 추가하기위한 또 다른 훌륭한 프레임 워크입니다.