Task.Yield Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Tworzy oczekujące zadanie, które asynchronicznie zwraca bieżący kontekst po oczekiwaniu.
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
Zwraca
Kontekst, który po oczekiwaniu będzie asynchronicznie przechodził z powrotem do bieżącego kontekstu w momencie oczekiwania. Jeśli bieżący element SynchronizationContext jest inny niż null, jest traktowany jako bieżący kontekst. W przeciwnym razie harmonogram zadań skojarzony z aktualnie wykonywanym zadaniem jest traktowany jako bieżący kontekst.
Uwagi
Możesz użyć await Task.Yield();
metody asynchronicznej, aby wymusić wykonanie asynchronicznej metody. Jeśli istnieje bieżący kontekst synchronizacji (SynchronizationContext obiekt), spowoduje to opublikowanie pozostałej części wykonania metody z powrotem do tego kontekstu. Jednak kontekst zdecyduje, jak określić priorytety tej pracy względem innej pracy, która może być oczekująca. Kontekst synchronizacji, który znajduje się w wątku interfejsu użytkownika w większości środowisk interfejsu użytkownika, często określa priorytety pracy opublikowanej w kontekście wyższym niż praca wejściowa i renderowania. Z tego powodu nie polegaj na await Task.Yield();
zachowaniu odpowiedzi interfejsu użytkownika. Aby uzyskać więcej informacji, zobacz wpis Przydatne abstrakcje włączone z funkcją ContinueWith w blogu Programowanie równoległe za pomocą platformy .NET.