Task.Yield Task.Yield Task.Yield Task.Yield Method

정의

대기할 때 현재 컨텍스트로 비동기적으로 전환되는 awaitable 작업을 만듭니다.Creates an awaitable task that asynchronously yields back to the current context when awaited.

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

반환

대기할 때 대기 시의 현재 컨텍스트로 비동기적으로 전환될 컨텍스트입니다.A context that, when awaited, will asynchronously transition back into the current context at the time of the await. 현재 SynchronizationContext가 null이 아닌 경우 현재 컨텍스트로 취급됩니다.If the current SynchronizationContext is non-null, it is treated as the current context. 그렇지 않으면 현재 실행 중인 작업과 관련된 작업 스케줄러를 현재 컨텍스트로 취급 됩니다.Otherwise, the task scheduler that is associated with the currently executing task is treated as the current context.

설명

사용할 수 있습니다 await Task.Yield(); 비동기 메서드에서 메서드가 비동기적으로 완료 하도록 합니다.You can use await Task.Yield(); in an asynchronous method to force the method to complete asynchronously. 현재 동기화 컨텍스트가 없는 경우 (SynchronizationContext 개체),이를 해당 컨텍스트로 메서드의 실행의 나머지 부분에서는 게시 합니다.If there is a current synchronization context (SynchronizationContext object), this will post the remainder of the method's execution back to that context. 그러나 컨텍스트는 보류 될 수 있는 다른 작업을 기준으로이 작업을 우선 순위를 지정 하는 방법을 결정 합니다.However, the context will decide how to prioritize this work relative to other work that may be pending. 대부분의 UI 환경에 있는 UI 스레드에서 동기화 컨텍스트를 입력 하 고 렌더링 작업 보다 높은 컨텍스트에 게시 된 작업의 우선 순위 종종 됩니다.The synchronization context that is present on a UI thread in most UI environments will often prioritize work posted to the context higher than input and rendering work. 이러한 이유로 의존 하지 마십시오 await Task.Yield(); UI를 응답 가능한 상태로 유지 하 합니다.For this reason, do not rely on await Task.Yield(); to keep a UI responsive. 자세한 내용은 항목을 참조 하세요 ContinueWith를 사용 하 여 유용한 추상화 설정 에서 Parallel Programming with.NET 블로그.For more information, see the entry Useful Abstractions Enabled with ContinueWith in the Parallel Programming with .NET blog.

적용 대상