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