DispatchObject Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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. |