DispatcherPriority DispatcherPriority DispatcherPriority DispatcherPriority Enum

Определение

Описывает приоритеты, с которыми могут вызываться операции посредством Dispatcher.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
Наследование
DispatcherPriorityDispatcherPriorityDispatcherPriorityDispatcherPriority

Поля

ApplicationIdle ApplicationIdle ApplicationIdle ApplicationIdle 2

Значением перечисления является 2.The enumeration value is 2. Операции обрабатываются, когда приложение бездействует.Operations are processed when the application is idle.

Background Background Background Background 4

Значением перечисления является 4.The enumeration value is 4. Операции обрабатываются после завершения всех остальных операций, которые не находятся в состоянии ожидания.Operations are processed after all other non-idle operations are completed.

ContextIdle ContextIdle ContextIdle ContextIdle 3

Значением перечисления является 3.The enumeration value is 3. Операции обрабатываются после завершения фоновых операций.Operations are processed after background operations have completed.

DataBind DataBind DataBind DataBind 8

Значением перечисления является 8.The enumeration value is 8. Операции обрабатываются с таким же приоритетом, как и привязка данных.Operations are processed at the same priority as data binding.

Inactive Inactive Inactive Inactive 0

Значением перечисления является 0.The enumeration value is 0. Операции не обрабатываются.Operations are not processed.

Input Input Input Input 5

Значением перечисления является 5.The enumeration value is 5. Операции обрабатываются с таким же приоритетом, как и ввод данных.Operations are processed at the same priority as input.

Invalid Invalid Invalid Invalid -1

Значением перечисляемого типа является -1.The enumeration value is -1. Это недействительный приоритет.This is an invalid priority.

Loaded Loaded Loaded Loaded 6

Значением перечисления является 6.The enumeration value is 6. Операции обрабатываются, когда завершены формирование структуры и отрисовка содержимого, но перед обработкой элементов с приоритетом ввода.Operations are processed when layout and render has finished but just before items at input priority are serviced. Именно на этой стадии генерируется событие Loaded.Specifically this is used when raising the Loaded event.

Normal Normal Normal Normal 9

Значением перечисления является 9.The enumeration value is 9. Операции обрабатываются с обычным приоритетом.Operations are processed at normal priority. Это типичный приоритет приложений.This is the typical application priority.

Render Render Render Render 7

Значением перечисления является 7.The enumeration value is 7. Операции обрабатываются с таким же приоритетом, как и отрисовка.Operations processed at the same priority as rendering.

Send Send Send Send 10

Значением перечисления является 10.The enumeration value is 10. Операции обрабатываются перед другими асинхронными операциями.Operations are processed before other asynchronous operations. Это наивысший приоритет.This is the highest priority.

SystemIdle SystemIdle SystemIdle SystemIdle 1

Значением перечисления является 1.The enumeration value is 1. Операции обрабатываются, когда система бездействует.Operations are processed when the system is idle.

Примеры

В следующем примере вызывается Dispatcher.BeginInvoke метод и передается делегат с одним аргументом.The following example calls the Dispatcher.BeginInvoke method and passes it a delegate with one argument. Приоритет имеет значение Normal.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)

Комментарии

Нет конкретного состояния системы или "время простоя", соответствующего ApplicationIdle и ContextIdle в текущей версии WPF.There is no specific system state or "idleness" corresponding to ApplicationIdle and ContextIdle in the current version of WPF. Оба значения по-прежнему являются допустимыми приоритетами; операция с приоритетом ContextIdle имеет более высокий приоритет, чем операция с SystemIdleприоритетом.Both are still valid priorities; an operation with a priority of ContextIdle has a higher priority than an operation with a priority of SystemIdle.

Объект Dispatcher не регулирует выполнение операции, если он превышает определенный процент ресурсов ЦП.The Dispatcher does not throttle the execution of an operation if it exceeds a certain percentage of the CPU. Один из способов регулирования процесса — использовать таймер.One way to throttle a process it to use a timer.

Если операция размещается с Dispatcher.Invoke помощью по собственному Dispatcher приоритету Send, операция обходит очередь и немедленно выполняется.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.

Применяется к