DispatcherQueueTimer Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Периодически выполняет задачу в DispatcherQueue по истечении интервала времени.
public ref class DispatcherQueueTimer sealed
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Foundation.LiftedContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class DispatcherQueueTimer final
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Foundation.WindowsAppSDKContract, 65536)]
class DispatcherQueueTimer final
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Foundation.LiftedContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class DispatcherQueueTimer
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Foundation.WindowsAppSDKContract), 65536)]
public sealed class DispatcherQueueTimer
Public NotInheritable Class DispatcherQueueTimer
- Наследование
- Атрибуты
Примеры
public void ConfigureRepeatingTimer()
{
_queueController = DispatcherQueueController.CreateOnDedicatedThread();
_queue = _queueController.DispatcherQueue;
_repeatingTimer = _queue.CreateTimer ();
_repeatingTimer.Interval = TimeSpan.FromSeconds(5);
// The tick handler will be invoked repeatedly after every 5
// seconds on the dedicated thread.
_repeatingTimer.Tick += (s, e) =>
{
DoWork();
};
// Start the Timer
_repeatingTimer.Start();
}
private DispatcherQueue _queue;
private DispatcherQueueController _queueController;
private DispatcherQueueTimer _repeatingTimer;
Комментарии
Система гарантирует вызов обработчика событий только по истечении указанного срока. Однако при наличии других ожидающих рабочих элементов в очереди может возникнуть некоторая задержка перед вызовом обработчика тактов.
Задачи таймера выполняются с приоритетом ниже, чем простой.
Таймеры не сохраняют цикл событий DispatcherQueue в активном состоянии. Таймеры, созданные после остановки цикла событий DispatcherQueue , не будут обрабатываться.
Свойства
Interval |
Возвращает и задает интервал для таймера. |
IsRepeating |
Возвращает или задает значение, указывающее, повторяется ли таймер. |
IsRunning |
Указывает, работает ли таймер в данный момент. |
Методы
Start() |
Запускает таймер DispatcherQueue . |
Stop() |
Останавливает таймер DispatcherQueue . |
События
Tick |
Событие, возникающее при истечении интервала таймера DispatcherQueue. |