DispatcherQueueTimer Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Executa periodicamente uma tarefa em um thread DispatcherQueue após um intervalo de tempo ter decorrido.
public ref class DispatcherQueueTimer sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 327680)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class DispatcherQueueTimer final
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 327680)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class DispatcherQueueTimer final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 327680)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class DispatcherQueueTimer
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 327680)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class DispatcherQueueTimer
Public NotInheritable Class DispatcherQueueTimer
- Herança
- Atributos
Requisitos do Windows
Família de dispositivos |
Windows 10 Fall Creators Update (introduzida na 10.0.16299.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduzida na v5.0)
|
Exemplos
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;
Comentários
O sistema garante invocar o manipulador de eventos somente depois que a duração especificada expirar. No entanto, pode haver algum atraso antes que o manipulador de escala seja invocado se houver outros itens de trabalho pendentes na fila.
As tarefas do temporizador são executadas com uma prioridade menor que a ociosa.
Os temporizadores não mantêm o loop de eventos DispatcherQueue ativo. Os temporizadores criados após a interrupção do loop de evento DispatcherQueue não serão processados.
Propriedades
Interval |
Obtém e define o intervalo para o temporizador. |
IsRepeating |
Indica se o temporizador está se repetindo. |
IsRunning |
Indica se o temporizador está em execução no momento. |
Métodos
Start() |
Inicia o temporizador. |
Stop() |
Interrompe o temporizador. |
Eventos
Tick |
Evento que é acionado quando o intervalo de temporizador decorrido. |