Udostępnij za pośrednictwem


Metoda JoinableTaskContextNode.SuppressRelevance —

Ukrywa wszelkie JoinableTask jest skojarzony obiekt wywołujący aż zwrócona wartość jest usuwany.

Przestrzeń nazw:  Microsoft.VisualStudio.Threading
Zestaw:  Microsoft.VisualStudio.Threading (w Microsoft.VisualStudio.Threading.dll)

Składnia

'Deklaracja
Public Function SuppressRelevance As JoinableTaskContext.RevertRelevance
public JoinableTaskContext.RevertRelevance SuppressRelevance()
public:
JoinableTaskContext::RevertRelevance SuppressRelevance()
member SuppressRelevance : unit -> JoinableTaskContext.RevertRelevance
public function SuppressRelevance() : JoinableTaskContext.RevertRelevance

Wartość zwracana

Typ: Microsoft.VisualStudio.Threading.JoinableTaskContext.RevertRelevance
A JoinableTaskContext.RevertRelevance do dysponowania kiedy chcesz przywrócić dostęp do obiektu wywołującego jest skojarzony JoinableTask, ewentualne.

Uwagi

W niektórych przypadkach zadanie asynchroniczne może być wydzielone wewnątrz pełnomocnik dostarczane do Run tak, że pracy nie ma uprawnień do ponownego wejścia głównego wątku aż do Run zwrócił wywołania, a wątek interfejsu użytkownika jest bezczynny.Aby zapobiec sytuacji, w której zadanie asynchroniczne mogą automatycznie ponownie wątku głównego, zawijanie kod, który wywołuje asynchroniczne zadanie przy użyciu bloku z wywołaniem tej metody jako wyrażenie.

Przykłady

this.JobContext.RunSynchronously(async delegate {
    using(this.JobContext.SuppressRelevance()) {
        var asyncOperation = Task.Run(async delegate {
            // Some background work.
            await this.JobContext.SwitchToMainThreadAsync();
            // Some Main thread work, that cannot begin until the outer RunSynchronously call has returned.
        });
    }

    // Because the asyncOperation is not related to this Main thread work (it was suppressed),
    // the following await *would* deadlock if it were uncommented.
        ////await asyncOperation;
});

Zabezpieczenia programu .NET Framework

Zobacz też

Informacje

JoinableTaskContextNode Klasa

Przestrzeń nazw Microsoft.VisualStudio.Threading