DispatchSource.Timer Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione.
public class DispatchSource.Timer : CoreFoundation.DispatchSource
type DispatchSource.Timer = class
inherit DispatchSource
- Ereditarietà
Commenti
I parametri timer vengono configurati con la funzione dispatch_source_set_timer(). Una volta restituita questa funzione, tutti i dati di origine in sospeso accumulati per i parametri timer precedenti sono stati cancellati; il successivo incendio del timer si verificherà all'avvio e ogni nanosecondo intervallo successivamente fino a quando l'origine timer non viene annullata.
Qualsiasi incendio del timer può essere ritardato dal sistema per migliorare il consumo energetico e le prestazioni del sistema. Il limite massimo per il ritardo consentito può essere configurato con l'argomento di leeway, il limite inferiore è sotto il controllo del sistema.
Per l'attivazione iniziale del timer all'inizio, il limite superiore per il ritardo consentito è impostato su nanosecondi di leway. Per il timer successivo viene attivato all'inizio + N * intervallo, il limite superiore è MIN(leeway, interval / 2 ).
Il limite inferiore al ritardo consentito può variare con lo stato del processo, ad esempio la visibilità dell'interfaccia utente dell'applicazione. Se l'origine timer specificata è stata creata con un costruttore che imposta "strict" su true, il sistema eseguirà un'operazione ottimale per osservare rigorosamente il valore specificato della modalità di leway anche se è inferiore al limite inferiore corrente. Si noti che è necessario prevedere una quantità minima di ritardo anche se questo flag è specificato.
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 ();
Costruttori
| Nome | Descrizione |
|---|---|
| DispatchSource.Timer(Boolean, DispatchQueue) |
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione. |
| DispatchSource.Timer(DispatchQueue) |
Crea un'origine dispatch timer che verrà richiamata a intervalli periodici. |
| DispatchSource.Timer(IntPtr, Boolean) |
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione. |
| DispatchSource.Timer(IntPtr) |
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione. |
Proprietà
| Nome | Descrizione |
|---|---|
| Handle |
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione. (Ereditato da DisposableObject) |
| IsCanceled |
Determinare se l'origine specificata è stata annullata. (Ereditato da DispatchSource) |
| Owns |
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione. (Ereditato da DisposableObject) |
| TimerFiredCount |
Numero di volte in cui il timer è stato attivato dall'ultima chiamata del gestore eventi |
Metodi
| Nome | Descrizione |
|---|---|
| Activate() |
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione. (Ereditato da DispatchObject) |
| Cancel() |
Annulla in modo asincrono l'origine dispatch. (Ereditato da DispatchSource) |
| ClearHandle() |
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione. (Ereditato da DisposableObject) |
| Dispose() |
Rilascia tutte le risorse usate da questo oggetto. (Ereditato da DisposableObject) |
| Dispose(Boolean) |
Rilascia le risorse usate dall'oggetto DispatchSource. (Ereditato da DispatchSource) |
| Equals(Object) |
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione. (Ereditato da DisposableObject) |
| GetCheckedHandle() |
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione. (Ereditato da DisposableObject) |
| GetHashCode() |
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione. (Ereditato da DisposableObject) |
| InitializeHandle(NativeHandle) |
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione. (Ereditato da DisposableObject) |
| Release() |
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione. (Ereditato da DispatchObject) |
| Resume() |
Riprende l'origine dispatch. (Ereditato da DispatchSource) |
| Retain() |
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione. (Ereditato da DispatchObject) |
| SetCancelHandler(Action) |
Fornisce un gestore di annullamento (Ereditato da DispatchSource) |
| SetEventHandler(Action) |
È stato specificato un gestore da eseguire quando gli eventi vengono ricevuti nell'origine dispatch. (Ereditato da DispatchSource) |
| SetRegistrationHandler(Action) |
Fornisce un gestore di registrazione (Ereditato da DispatchSource) |
| SetTargetQueue(DispatchQueue) |
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione. (Ereditato da DispatchObject) |
| SetTimer(DispatchTime, Int64, Int64) |
Configura i parametri nel timer. |
| Suspend() |
Sospende l'origine dispatch. (Ereditato da DispatchSource) |
Metodi di estensione
| Nome | Descrizione |
|---|---|
| GetHandle(INativeObject) |
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione. |
| GetNonNullHandle(INativeObject, String) |
Le origini di questo tipo richiamano periodicamente il gestore eventi nella coda di destinazione. |