Sdílet prostřednictvím


Task.Yield Metoda

Definice

Vytvoří čekající úlohu, která asynchronně vrátí aktuální kontext při vyčká.

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

Návraty

Kontext, který při čekání asynchronně přejde zpět do aktuálního kontextu v době čekání. SynchronizationContext Pokud aktuální hodnota není null, považuje se za aktuální kontext. V opačném případě je plánovač úloh přidružený k aktuálně spuštěné úloze považován za aktuální kontext.

Poznámky

V asynchronní metodě můžete použít await Task.Yield(); k vynucení asynchronního dokončení metody. Pokud existuje aktuální kontext synchronizace (SynchronizationContext objekt), odešle se zbývající část provádění metody zpět do tohoto kontextu. Kontext však rozhodne o tom, jak upřednostnit tuto práci vzhledem k jiné práci, která může být nevyřízená. Kontext synchronizace, který se nachází ve vlákně uživatelského rozhraní ve většině prostředí uživatelského rozhraní, bude často upřednostňovat práci publikovaná v kontextu vyšší než zadávání a vykreslování. Z tohoto důvodu se nespoléhejte na await Task.Yield(); zachování odezvy uživatelského rozhraní. Další informace najdete v položce Užitečné abstrakce povolené s ContinueWith v blogu Paralelní programování s .NET.

Platí pro