DispatcherPriority Enumeráció

Definíció

Ismerteti azokat a prioritásokat, amelyeknél a műveletek meghívhatók a Dispatcher.

public enum class DispatcherPriority
public enum DispatcherPriority
type DispatcherPriority = 
Public Enum DispatcherPriority
Öröklődés
DispatcherPriority

Mezők

Name Érték Description
Invalid -1

Az enumerálás értéke -1. Ez érvénytelen prioritás.

Inactive 0

Az enumerálás értéke 0. A műveletek nincsenek feldolgozva.

SystemIdle 1

Az enumerálás értéke 1. A rendszer tétlen állapotban dolgozza fel a műveleteket.

ApplicationIdle 2

Az enumerálás értéke 2. A műveletek akkor lesznek feldolgozva, amikor az alkalmazás tétlen.

ContextIdle 3

Az enumerálás értéke 3. A műveletek feldolgozása a háttérműveletek befejezése után történik.

Background 4

Az enumerálás értéke 4. A műveletek feldolgozása az összes többi nem tétlen művelet befejezése után történik.

Input 5

Az enumerálási érték 5. A műveletek feldolgozása a bemenettel azonos prioritással történik.

Loaded 6

Az enumerálás értéke 6. A műveletek akkor lesznek feldolgozva, ha az elrendezés és a renderelés befejeződött, de a bemeneti prioritású elemek kiszolgálása előtt. Ez különösen a betöltött esemény emelésekor használatos.

Render 7

Az enumerálás értéke 7. A feldolgozás a rendereléssel azonos prioritással történik.

DataBind 8

Az enumerálási érték 8. A műveletek feldolgozása ugyanolyan prioritással történik, mint az adatkötés.

Normal 9

Az enumerálás értéke 9. A műveletek feldolgozása normál prioritással történik. Ez a tipikus alkalmazásprioritás.

Send 10

Az enumerálás értéke 10. A műveletek feldolgozása más aszinkron műveletek előtt történik. Ez a legmagasabb prioritás.

Példák

Az alábbi példa meghívja a metódust Dispatcher.BeginInvoke , és egy argumentummal átadja azt egy meghatalmazottnak. A prioritás a következőre Normalvan állítva: .

// 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)

Megjegyzések

A WPF jelenlegi verziójában nincs ApplicationIdle és ContextIdle megfelelő rendszerállapot vagy "tétlenség". Mindkettő továbbra is érvényes prioritás; egy prioritású ContextIdle művelet nagyobb prioritással SystemIdlerendelkezik, mint egy .

A Dispatcher művelet végrehajtását nem szabályozza, ha az meghaladja a processzor bizonyos százalékát. A folyamat szabályozásának egyik módja az időzítő használata.

Ha egy műveletet önállóanDispatcher.Invoke, prioritási prioritással Dispatcherad Send ki, a művelet áthalad az üzenetsoron, és azonnal végrehajtja.

A következőre érvényes: