Task.Yield Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vytvoří čekající úlohu, která asynchronně vrátí aktuální kontext, když se čeká.
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í. Pokud je aktuální SynchronizationContext hodnota nenulová, považuje se za aktuální kontext. V opačném případě se plánovač úloh přidružený k aktuálně spuštěné úloze považuje za aktuální kontext.
Poznámky
Pomocí asynchronní metody můžete await Task.Yield(); vynutit dokončení metody asynchronně. Pokud existuje aktuální kontext synchronizace (SynchronizationContext objekt), zapíše se zbývající část spuštění metody zpět do tohoto kontextu. Kontext se ale rozhodne, jak určit prioritu této práce vzhledem k jiným pracím, které mohou být čekající. Kontext synchronizace, který se nachází ve vlákně uživatelského rozhraní ve většině prostředí uživatelského rozhraní, často upřednostňuje práci publikovaná do kontextu, který je vyšší než vstupní a vykreslovací práce. Proto se nespoléhejte na await Task.Yield(); to, aby uživatelské rozhraní reagovalo. Další informace najdete v položce Použití s povolenou funkcí ContinueWith v blogu Parallel Programming with .NET.