DispatcherPriority Výčet
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Popisuje priority, při kterých lze operace vyvolat prostřednictvím Dispatcher.
public enum class DispatcherPriority
public enum DispatcherPriority
type DispatcherPriority =
Public Enum DispatcherPriority
- Dědičnost
Pole
ApplicationIdle | 2 | Hodnota výčtu je 2. Operace se zpracovávají, když je aplikace nečinná. |
Background | 4 | Hodnota výčtu je 4. Operace se zpracovávají po dokončení všech ostatních nečinných operací. |
ContextIdle | 3 | Hodnota výčtu je 3. Operace se zpracovávají po dokončení operací na pozadí. |
DataBind | 8 | Hodnota výčtu je 8. Operace se zpracovávají stejně jako datové vazby. |
Inactive | 0 | Hodnota výčtu je 0. Operace se nezpracují. |
Input | 5 | Hodnota výčtu je 5. Operace se zpracovávají se stejnou prioritou jako vstup. |
Invalid | -1 | Hodnota výčtu je -1. Toto je neplatná priorita. |
Loaded | 6 | Hodnota výčtu je 6. Operace se zpracovávají při dokončení rozložení a vykreslení, ale těsně před obsluhou položek s prioritou vstupu. Konkrétně se používá při vyvolání události Načteno. |
Normal | 9 | Hodnota výčtu je 9. Operace se zpracovávají v normální prioritě. Toto je typická priorita aplikace. |
Render | 7 | Hodnota výčtu je 7. Operace zpracovávané se stejnou prioritou jako vykreslování. |
Send | 10 | Hodnota výčtu je 10. Operace se zpracovávají před jinými asynchronními operacemi. Toto je nejvyšší priorita. |
SystemIdle | 1 | Hodnota výčtu je 1. Operace se zpracovávají, když je systém nečinný. |
Příklady
Následující příklad volá metodu Dispatcher.BeginInvoke a předá ji delegát s jedním argumentem. Priorita je nastavena na 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)
Poznámky
Neexistuje žádný konkrétní stav systému nebo "nečinnost" odpovídající ApplicationIdle
a ContextIdle
v aktuální verzi WPF. Obě jsou stále platné priority; operace s prioritou ContextIdle
má vyšší prioritu než operace s prioritou SystemIdle
.
Dispatcher Při překročení určitého procenta procesoru nedojde k omezení provádění operace. Jedním ze způsobů omezení procesu je použití časovače.
Pokud se operace publikuje Dispatcher.Invoke samostatně na základě Dispatcher priority Send
, operace se předá frontě a okamžitě se spustí.