Task.Yield Metoda

Definicja

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.

Dotyczy