Task.Yield 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
대기할 때 현재 컨텍스트로 비동기적으로 전환되는 awaitable 작업을 만듭니다.
public:
static System::Runtime::CompilerServices::YieldAwaitable Yield();
public static System.Runtime.CompilerServices.YieldAwaitable Yield ();
static member Yield : unit -> System.Runtime.CompilerServices.YieldAwaitable
Public Shared Function Yield () As YieldAwaitable
반환
대기할 때 대기 시의 현재 컨텍스트로 비동기적으로 전환될 컨텍스트입니다. 현재 SynchronizationContext가 null이 아닌 경우 현재 컨텍스트로 취급됩니다. 그렇지 않으면 현재 실행 중인 작업과 관련된 작업 스케줄러를 현재 컨텍스트로 취급 됩니다.
설명
비동기 메서드에서 메서드 await Task.Yield();
를 강제로 비동기적으로 완료할 수 있습니다. 현재 동기화 컨텍스트(SynchronizationContext 개체)가 있는 경우 메서드 실행의 나머지 부분을 해당 컨텍스트에 다시 게시합니다. 그러나 컨텍스트는 보류 중인 다른 작업에 비해 이 작업의 우선 순위를 지정하는 방법을 결정합니다. 대부분의 UI 환경에서 UI 스레드에 있는 동기화 컨텍스트는 종종 입력 및 렌더링 작업보다 컨텍스트에 게시된 작업의 우선 순위를 지정합니다. 따라서 UI 응답성을 유지하는 데 의존 await Task.Yield();
하지 마세요. 자세한 내용은 .NET을 사용한 병렬 프로그래밍 블로그에서 ContinueWith를 사용하여 사용할 수 있는 유용한 추상화 항목을 참조하세요.