DispatchSource.Timer 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.
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino.
public class DispatchSource.Timer : CoreFoundation.DispatchSource
type DispatchSource.Timer = class
inherit DispatchSource
- Herança
Comentários
Os parâmetros do temporizador são configurados com a função dispatch_source_set_timer(). Depois que essa função retornar, todos os dados de origem pendentes acumulados para os parâmetros de temporizador anteriores foram limpos; o próximo incêndio do temporizador ocorrerá no início e cada intervalo de nanossegundos depois disso até que a origem do temporizador seja cancelada.
Qualquer incêndio do temporizador pode ser atrasado pelo sistema para melhorar o consumo de energia e o desempenho do sistema. O limite superior para o atraso permitido pode ser configurado com o argumento de margem de manobra, o limite inferior está sob o controle do sistema.
Para o acionamento inicial do temporizador no início, o limite superior para o atraso permitido é definido como nanossegundos de margem de manobra. Para o temporizador subsequente acionado no intervalo de início + N*, o limite superior é MIN(margem de manobra, intervalo /2).
O limite inferior para o atraso permitido pode variar com o estado do processo, como a visibilidade da interface do usuário do aplicativo. Se a origem do temporizador especificada tiver sido criada com um construtor que define "strict" como true, o sistema fará um melhor esforço para observar estritamente o valor de margem de manobra fornecido, mesmo que seja menor que o limite inferior atual. Observe que uma quantidade mínima de atraso deve ser esperada mesmo se esse sinalizador for especificado.
var dispatchSource = new DispatchSource.Timer (strict: true, queue: DispatchQueue.MainQueue);
long delay = 2000000000;
long leeway = 5000000000;
dispatchSource.SetTimer (DispatchTime.Now, delay, leeway);
dispatchSource.SetRegistrationHandler (() => {
Console.WriteLine ("Timer registered");
});
dispatchSource.SetEventHandler (() => {
Console.WriteLine ("Timer tick");
});
dispatchSource.SetCancelHandler (() => {
Console.WriteLine ("Timer stopped");
});
dispatchSource.Resume ();
Construtores
| Nome | Description |
|---|---|
| DispatchSource.Timer(Boolean, DispatchQueue) |
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino. |
| DispatchSource.Timer(DispatchQueue) |
Cria uma fonte de expedição de temporizador que será invocada em intervalos periódicos. |
| DispatchSource.Timer(IntPtr, Boolean) |
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino. |
| DispatchSource.Timer(IntPtr) |
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino. |
Propriedades
| Nome | Description |
|---|---|
| Handle |
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino. (Herdado de DisposableObject) |
| IsCanceled |
Determine se a origem especificada foi cancelada. (Herdado de DispatchSource) |
| Owns |
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino. (Herdado de DisposableObject) |
| TimerFiredCount |
Número de vezes que o temporizador foi acionado desde a última invocação do manipulador de eventos |
Métodos
| Nome | Description |
|---|---|
| Activate() |
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino. (Herdado de DispatchObject) |
| Cancel() |
Cancela de forma assíncrona a fonte de expedição. (Herdado de DispatchSource) |
| ClearHandle() |
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino. (Herdado de DisposableObject) |
| Dispose() |
Libera todos os recursos usados por esse objeto. (Herdado de DisposableObject) |
| Dispose(Boolean) |
Libera os recursos usados pelo objeto DispatchSource. (Herdado de DispatchSource) |
| Equals(Object) |
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino. (Herdado de DisposableObject) |
| GetCheckedHandle() |
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino. (Herdado de DisposableObject) |
| GetHashCode() |
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino. (Herdado de DisposableObject) |
| InitializeHandle(NativeHandle) |
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino. (Herdado de DisposableObject) |
| Release() |
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino. (Herdado de DispatchObject) |
| Resume() |
Retoma a fonte de expedição. (Herdado de DispatchSource) |
| Retain() |
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino. (Herdado de DispatchObject) |
| SetCancelHandler(Action) |
Fornece um manipulador de cancelamento (Herdado de DispatchSource) |
| SetEventHandler(Action) |
Especificado um manipulador a ser executado quando os eventos são recebidos na fonte de expedição. (Herdado de DispatchSource) |
| SetRegistrationHandler(Action) |
Fornece um manipulador de registro (Herdado de DispatchSource) |
| SetTargetQueue(DispatchQueue) |
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino. (Herdado de DispatchObject) |
| SetTimer(DispatchTime, Int64, Int64) |
Configura os paramters para o temporizador. |
| Suspend() |
Suspende a origem da expedição. (Herdado de DispatchSource) |
Métodos de Extensão
| Nome | Description |
|---|---|
| GetHandle(INativeObject) |
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino. |
| GetNonNullHandle(INativeObject, String) |
Fontes desse tipo invocam periodicamente o manipulador de eventos na fila de destino. |