206

206



Zliczanie odwołań pozwala na bezpieczne współużytkowanie obiektów. Pomysł jest bardzo prosty. Zamiast zewnętrznie kontrolować czas istnienia obiektu, obiekt sam kontroluje operację usuwania. A raczej czas istnienia obiektu jest kontrolowany pośrednio z zewnątrz dzięki liczeniu liczby jego użyć. Użytkownicy obiektu określają, kiedy zaczynają i kiedy kończą korzystanie z obiektu. Obiekt natomiast gwarantuje, że będzie istniał, dopóki jest przez kogoś używany. Tę metodę stosuje się w obiektach standardu COM.

Zaimplementowanie tej techniki jest łatwe. Przed użyciem obiektu wywołuje się metodę Add. Zwiększa ona wewnętrzny licznik:

int Add()

{

return ++m_cRef;

}

Gdy obiekt przestaje być używany, wówczas wywołuje się metodę Release. Metoda ta zmniejsza wewnętrzny licznik i usuwa obiekt, gdy wartość licznika spada do zera:

int Release{}

{

int cRef;

// Wskazówka 86.

— m_cRef; cRef = m_cRef; if(!cRef)

delete this; return cRef;

}

Obiekt może być współużytkowany w wielu różnych częściach kodu. Każda z tych części przestrzega zasady wywoływania metod Add i Release. Dzięki temu obiekt nie może być usunięty przez przypadek, dopóki ktoś go używa.

Zauważmy, że zarówno konstruktor jak i destruktor dla tej klasy są prywatne. Uniemożliwia to tworzenie zliczanych obiektów na stosie lub usuwanie ich przez zewnętrznych użytkowników obiektu.

Połączenie metody zliczania odwołań z inteligentnymi wskaźnikami jest bardzo wydajną techniką.


Wyszukiwarka

Podobne podstrony:
Zliczanie odwołań pozwala na bezpieczne współużytkowanie obiektów. Pomysł jest bardzo prosty. Zamias
Własności skroplonego gazu ziemnego pozwalają na bezpieczne jego transportowanie przy zapewnieniu
Pilarki taśmowe powinny byc wyposażone w urządzenia pomocnicze pozwalające na bezpieczne dosuwame
Spatial Join (Złączenie przestrzenne) Narzędzie pozwalające na przestrzenne łączenie obiektów oraz i
70310 IMGh42 • Wielkość ramienia pozwalającego na kompensację wydłużenia rury, uzależniona jest
Inne oznaczenia produktu można podzielić na: -bezpieczeństwa - świadczą iż produkt jest bezpieczny d
13Etapy procesu projektowego Zaprezentowanie na papierze swoich indywidualnych pomysłów jest jednym
Umiejętność ta pozwalała na przykład stwierdzić, czy więcej jest „nas”, czy „tych drugich”. Jeśli
Sieć o adresie 192.168.1.128/29 pozwala na podłączenie Poprawnie Który z protokołów jest szyfrowanym
Ćwiczenie 10. Metody izolacji i rozdziału kwasów nukleinowych. pozwala na wydzielenie frakcji RNA. D
Ćwiczenie 10. Metody izolacji i rozdziału kwasów nukleinowych. pozwala na wydzielenie frakcji RNA. D
Ten wzór wygląda na skomplikowany, jednak w rzeczywistości jest bardzo prosty. 9
wiska na kierunku wychowanie techniczne. Przedmiot jest bardzo łubiany, wykłady cieszą się niemal
CCF20090303033 70 Argument na rzecz indeterminizmu nam świat jest bardzo złożony i jakkolwiek może
numer specjalny ■ ■ ■ Maciej Jarosz, Magdalena Janiecka, kiem. Pomysł byt bardzo prosty - chodziło o
Christiaan Huygens Rozwój poglądów na naturę światła. Nauka o świetle jest bardzo stara, ale spór o
Chris tiaan Huygens Rozwój poglądów na naturę światła. Nauka o świetle jest bardzo stara, ale spór o
Śródwaga jest bardzo prostym przyrządem opartym na konstrukcji trójkąta równoramiennego z umieszczon

więcej podobnych podstron