Język

DispatchObject Klasa

Definicja

Klasa bazowa dla obiektów wysyłania.

public abstract class DispatchObject : CoreFoundation.NativeObject
type DispatchObject = class
    inherit NativeObject
Dziedziczenie
Pochodne

Uwagi

Dyspozytuj funkcje współużytkowania obiektów do koordynowania zarządzania pamięcią, zawieszenia, anulowania i wskaźników tekstowych con-text. Chociaż wszystkie obiekty wysyłania są zachowywane, nie wszystkie obiekty obsługują zawieszenie, wskaźniki kontekstu lub finalizatory (obecnie tylko kolejki i źródła obsługują te dodatkowe interfejsy).

Wywołanie bloków w kolejkach wysyłki lub źródłach wysyłania może zostać zawieszone lub wznowione przy użyciu metod Suspend() i Resume() odpowiednio. Struktura wysyłania zawsze sprawdza stan zawieszenia przed wykonaniem bloku, ale takie zmiany nigdy nie wpływają na blok podczas wykonywania (niewłaściwe). Dlatego zawieszenie obiektu jest asynchroniczne, chyba że jest wykonywane z kontekstu kolejki docelowej dla danego obiektu. Wynik wstrzymania lub wznowienia obiektu, który nie jest kolejką wysyłania lub źródło wysyłki jest niezdefiniowane.

Ważne: zawieszenie dotyczy wszystkich aspektów cyklu życia obiektu wysyłania, w tym funkcji finalizatora i procedury obsługi anulowania. Dlatego ważne jest, aby równoważyć wywołania i Suspend()Resume() tak, aby obiekt dispatch został w pełni wznowiony po wydaniu ostatniego odwołania. Wynik zwolnienia wszystkich odwołań do obiektu wysyłania w stanie wstrzymania jest niezdefiniowany.

Kolejki i źródła wysyłania obsługują wskaźniki kontekstu uzupełniającego. Wartość punktu kontekstu może zostać pobrana i zaktualizowana za pomocą Context właściwości .

Wynik pobierania lub ustawiania kontekstu obiektu, który nie jest kolejką wysyłki lub źródło wysyłki jest niezdefiniowane.

Właściwości

Nazwisko Opis
Handle

Klasa bazowa dla obiektów wysyłania.

(Odziedziczone po DisposableObject)
Owns

Klasa bazowa dla obiektów wysyłania.

(Odziedziczone po DisposableObject)

Metody

Nazwisko Opis
Activate()

Klasa bazowa dla obiektów wysyłania.

ClearHandle()

Klasa bazowa dla obiektów wysyłania.

(Odziedziczone po DisposableObject)
Dispose()

Zwalnia wszystkie zasoby używane przez ten obiekt.

(Odziedziczone po DisposableObject)
Dispose(Boolean)

Zwalnia zasoby używane przez ten obiekt.

(Odziedziczone po NativeObject)
Equals(Object)

Klasa bazowa dla obiektów wysyłania.

(Odziedziczone po DisposableObject)
GetCheckedHandle()

Klasa bazowa dla obiektów wysyłania.

(Odziedziczone po DisposableObject)
GetHashCode()

Klasa bazowa dla obiektów wysyłania.

(Odziedziczone po DisposableObject)
InitializeHandle(NativeHandle)

Klasa bazowa dla obiektów wysyłania.

(Odziedziczone po DisposableObject)
Release()

Klasa bazowa dla obiektów wysyłania.

Retain()

Klasa bazowa dla obiektów wysyłania.

SetTargetQueue(DispatchQueue)

Klasa bazowa dla obiektów wysyłania.

Metody rozszerzania

Nazwisko Opis
GetHandle(INativeObject)

Klasa bazowa dla obiektów wysyłania.

GetNonNullHandle(INativeObject, String)

Klasa bazowa dla obiektów wysyłania.

Dotyczy