Dispatcher.DisableProcessing Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Deaktiviert die Verarbeitung der Dispatcher Warteschlange.
public:
System::Windows::Threading::DispatcherProcessingDisabled DisableProcessing();
public System.Windows.Threading.DispatcherProcessingDisabled DisableProcessing();
member this.DisableProcessing : unit -> System.Windows.Threading.DispatcherProcessingDisabled
Public Function DisableProcessing () As DispatcherProcessingDisabled
Gibt zurück
Eine Struktur, die zum erneuten Aktivieren der Dispatcherverarbeitung verwendet wird.
Beispiele
Das folgende Beispiel zeigt, wie Die Dispatcherverarbeitung deaktiviert und die Verteilerverarbeitung erneut aktiviert wird. DisableProcessing wird in einer using-Anweisung aufgerufen. DisableProcessing gibt eine DispatcherProcessingDisabled Struktur zurück, die als Objekt verwendet wird, das verworfen werden soll, wenn der verwendende Block beendet wird. Wenn Dispose die Struktur aufgerufen wird, wird die DispatcherProcessingDisabled Dispatcherverarbeitung erneut aktiviert.
// The Dispose() method is called at the end of the using statement.
// Calling Dispose on the DispatcherProcessingDisabled structure,
// which is returned from the call to DisableProcessing, will
// re-enalbe Dispatcher processing.
using (Dispatcher.DisableProcessing())
{
// Do work while the dispatcher processing is disabled.
Thread.Sleep(2000);
}
' The Dispose() method is called at the end of the using statement.
' Calling Dispose on the DispatcherProcessingDisabled structure,
' which is returned from the call to DisableProcessing, will
' re-enable Dispatcher processing.
Using Dispatcher.DisableProcessing()
' Do work while the dispatcher processing is disabled.
Thread.Sleep(2000)
End Using
Hinweise
Das Deaktivieren der Dispatcherverarbeitung ist eine erweiterte Methode, mit der die Wahrscheinlichkeit einer nicht zusammenhängenden Reentranz beseitigt werden soll.
Die Auswirkungen der Deaktivierung der Verarbeitung sind wie folgt:
CLR-Sperren pumpen keine Nachrichten intern.
DispatcherFrame Objekte dürfen nicht verschoben werden.
Die Nachrichtenverarbeitung ist nicht zulässig.
Die DispatcherProcessingDisabled Struktur, die zurückgegeben wird, wenn sie aufgerufen wird, DisableProcessing kann zum erneuten Aktivieren der Dispatcherverarbeitung verwendet werden. Das Aufrufen Dispose der Struktur ermöglicht die DispatcherProcessingDisabled Verarbeitung erneut.
DisableProcessing kann nur für den Thread aufgerufen werden, dem die Dispatcher Zugeordnete ist.