Lingua

DispatchObject Classe

Definizione

Classe di base per gli oggetti dispatch.

public abstract class DispatchObject : CoreFoundation.NativeObject
type DispatchObject = class
    inherit NativeObject
Ereditarietà
Derivato

Commenti

Gli oggetti Dispatch condividono funzioni per coordinare la gestione della memoria, la sospensione, l'annullamento e i puntatori di testo con- . Sebbene tutti gli oggetti dispatch siano conservabili, non tutti gli oggetti supportano sospensione, puntatori di contesto o finalizzatori (attualmente solo code e origini supportano queste interfacce aggiuntive).

La chiamata di blocchi nelle code di invio o nelle origini di invio può essere sospesa o ripresa rispettivamente con i metodi Suspend() e Resume() . Il framework dispatch controlla sempre lo stato di sospensione prima di eseguire un blocco, ma tali modifiche non influiscono mai su un blocco durante l'esecuzione (non preemptive). Pertanto, la sospensione di un oggetto è asincrona, a meno che non venga eseguita dal contesto della coda di destinazione per l'oggetto specificato. Il risultato della sospensione o della ripresa di un oggetto che non è una coda dispatch o un'origine dispatch non è definita.

Importante: la sospensione si applica a tutti gli aspetti del ciclo di vita dell'oggetto dispatch, tra cui la funzione finalizzatore e il gestore di annullamento. È quindi importante bilanciare le chiamate a Suspend() e Resume() in modo che l'oggetto dispatch venga ripreso completamente quando viene rilasciato l'ultimo riferimento. Risultato del rilascio di tutti i riferimenti a un oggetto dispatch in uno stato sospeso non definito.

Le code e le origini dispatch supportano puntatori di contesto supplementari. Il valore del punto di contesto può essere recuperato e aggiornato con la Context proprietà .

Il risultato dell'acquisizione o dell'impostazione del contesto di un oggetto che non è una coda dispatch o un'origine dispatch non è definita.

Proprietà

Nome Descrizione
Handle

Classe di base per gli oggetti dispatch.

(Ereditato da DisposableObject)
Owns

Classe di base per gli oggetti dispatch.

(Ereditato da DisposableObject)

Metodi

Nome Descrizione
Activate()

Classe di base per gli oggetti dispatch.

ClearHandle()

Classe di base per gli oggetti dispatch.

(Ereditato da DisposableObject)
Dispose()

Rilascia tutte le risorse usate da questo oggetto.

(Ereditato da DisposableObject)
Dispose(Boolean)

Rilascia le risorse usate da questo oggetto.

(Ereditato da NativeObject)
Equals(Object)

Classe di base per gli oggetti dispatch.

(Ereditato da DisposableObject)
GetCheckedHandle()

Classe di base per gli oggetti dispatch.

(Ereditato da DisposableObject)
GetHashCode()

Classe di base per gli oggetti dispatch.

(Ereditato da DisposableObject)
InitializeHandle(NativeHandle)

Classe di base per gli oggetti dispatch.

(Ereditato da DisposableObject)
Release()

Classe di base per gli oggetti dispatch.

Retain()

Classe di base per gli oggetti dispatch.

SetTargetQueue(DispatchQueue)

Classe di base per gli oggetti dispatch.

Metodi di estensione

Nome Descrizione
GetHandle(INativeObject)

Classe di base per gli oggetti dispatch.

GetNonNullHandle(INativeObject, String)

Classe di base per gli oggetti dispatch.

Si applica a