DispatcherPriority Enumeration

Definition

Beschreibt die Prioritäten, mit denen Vorgänge über den Dispatcher aufgerufen werden können.Describes the priorities at which operations can be invoked by way of the Dispatcher.

public enum class DispatcherPriority
public enum DispatcherPriority
type DispatcherPriority = 
Public Enum DispatcherPriority
Vererbung
DispatcherPriority

Felder

ApplicationIdle 2

Der Enumerationswert ist 2.The enumeration value is 2. Vorgänge werden verarbeitet, wenn sich die Anwendung im Leerlauf befindet.Operations are processed when the application is idle.

Background 4

Der Enumerationswert ist 4.The enumeration value is 4. Vorgänge werden verarbeitet, sobald alle Vorgänge außer den nicht im Leerlauf befindlichen abgeschlossen sind.Operations are processed after all other non-idle operations are completed.

ContextIdle 3

Der Enumerationswert ist 3.The enumeration value is 3. Vorgänge werden verarbeitet, sobald die Hintergrundvorgänge abgeschlossen sind.Operations are processed after background operations have completed.

DataBind 8

Der Enumerationswert ist 8.The enumeration value is 8. Vorgänge werden mit gleicher Priorität wie die Datenbindung verarbeitet.Operations are processed at the same priority as data binding.

Inactive 0

Der Enumerationswert ist 0.The enumeration value is 0. Vorgänge werden nicht verarbeitet.Operations are not processed.

Input 5

Der Enumerationswert ist 5.The enumeration value is 5. Vorgänge werden mit gleicher Priorität wie die Eingabe verarbeitet.Operations are processed at the same priority as input.

Invalid -1

Der Enumerationswert ist -1.The enumeration value is -1. Dies ist eine ungültige Priorität.This is an invalid priority.

Loaded 6

Der Enumerationswert ist 6.The enumeration value is 6. Vorgänge werden verarbeitet, sobald Layout und Wiedergabe beendet sind, aber bevor Elemente mit Eingabepriorität verarbeitet werden.Operations are processed when layout and render has finished but just before items at input priority are serviced. Dieser wird insbesondere verwendet, wenn das Loaded-Ereignis ausgelöst wird.Specifically this is used when raising the Loaded event.

Normal 9

Der Enumerationswert ist 9.The enumeration value is 9. Vorgänge werden mit normaler Priorität verarbeitet.Operations are processed at normal priority. Dies ist die häufigste Anwendungspriorität.This is the typical application priority.

Render 7

Der Enumerationswert ist 7.The enumeration value is 7. Vorgänge werden mit gleicher Priorität wie das Rendering verarbeitet.Operations processed at the same priority as rendering.

Send 10

Der Enumerationswert ist 10.The enumeration value is 10. Vorgänge werden vor anderen asynchronen Vorgängen verarbeitet.Operations are processed before other asynchronous operations. Dies ist die höchste Priorität.This is the highest priority.

SystemIdle 1

Der Enumerationswert ist 1.The enumeration value is 1. Vorgänge werden verarbeitet, wenn sich das System im Leerlauf befindet.Operations are processed when the system is idle.

Beispiele

Das folgende Beispiel ruft die Dispatcher.BeginInvoke -Methode auf und übergibt ihr einen Delegaten mit einem Argument.The following example calls the Dispatcher.BeginInvoke method and passes it a delegate with one argument. Die Priorität wird auf Normalfestgelegt.The priority is set to Normal.

// Schedule the update function in the UI thread.
tomorrowsWeather.Dispatcher.BeginInvoke(
    System.Windows.Threading.DispatcherPriority.Normal,
    new OneArgDelegate(UpdateUserInterface), 
    weather);
' Schedule the update function in the UI thread.
tomorrowsWeather.Dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Normal, New OneArgDelegate(AddressOf UpdateUserInterface), weather)

Hinweise

Es gibt keinen bestimmten Systemstatus oder "idständigkeit", ApplicationIdle der und ContextIdle in der aktuellen Version von WPF entspricht.There is no specific system state or "idleness" corresponding to ApplicationIdle and ContextIdle in the current version of WPF. Beide sind immer noch gültige Prioritäten. ein Vorgang mit der ContextIdle Priorität hat eine höhere Priorität als ein Vorgang mit der SystemIdlePriorität.Both are still valid priorities; an operation with a priority of ContextIdle has a higher priority than an operation with a priority of SystemIdle.

Der Dispatcher führt nicht zu einer Drosselung der Ausführung eines Vorgangs, wenn er einen bestimmten Prozentsatz der CPU überschreitet.The Dispatcher does not throttle the execution of an operation if it exceeds a certain percentage of the CPU. Eine Möglichkeit, einen Prozess für die Verwendung eines Timers zu drosseln.One way to throttle a process it to use a timer.

Wenn ein Vorgang mit Dispatcher.Invoke einem eigenen Dispatcher mit einer Priorität von Sendgepostet wird, umgeht der Vorgang die Warteschlange und wird sofort ausgeführt.If an operation is posted using Dispatcher.Invoke on its own Dispatcher at a priority of Send, the operation bypasses the queue and is immediately executed.

Gilt für: