MRJP Wykład 15: Różnice pomiędzy wersjami
Linia 7: | Linia 7: | ||
Obiekty aktywne (alias procesy albo wątki) są więc dla nas obiektami, które posiadają możliwość wykonywania instrukcji współbieżnie z innymi procesami. Mówiąc dokładniej obliczenia procesów mogą być wykonywane: | Obiekty aktywne (alias procesy albo wątki) są więc dla nas obiektami, które posiadają możliwość wykonywania instrukcji współbieżnie z innymi procesami. Mówiąc dokładniej obliczenia procesów mogą być wykonywane: | ||
* Współbieżnie (wiele procesów wykonywanych | * Współbieżnie (wiele procesów wykonywanych na jednym procesorze fizycznym), | ||
* W rozproszeniu (na maszynach połączonych siecią), | * W rozproszeniu (na maszynach połączonych siecią), | ||
* Równolegle (na maszynie z wieloma | * Równolegle (na maszynie z wieloma procesorami, które dzielą się wspólną pamięcią). | ||
[[grafika:aliencallII.jpg]] | |||
== Jednolicie czy oddzielnie? == | == Jednolicie czy oddzielnie? == | ||
Pytanie takie pojawia sie bardzo wcześnie gdy zamierzamy w języku programowania zawrzeć narzędzia programowania rozproszonego i współbieżnego. W javie mamy dwie odrębne koncepcje: procesy współbieżne realizowane są jako obiekty pokdlas klasy Thread. Procesy rozproszone wymagają użycia mechanizmu [RMI][http://www.example.com link title]. | Pytanie takie pojawia sie bardzo wcześnie gdy zamierzamy w języku programowania zawrzeć narzędzia programowania rozproszonego i współbieżnego. W javie mamy dwie odrębne koncepcje: procesy współbieżne realizowane są jako obiekty pokdlas klasy Thread. Procesy rozproszone wymagają użycia mechanizmu [RMI][http://www.example.com link title]. |
Wersja z 11:40, 12 cze 2006
Obiekty aktywne: współbieżne i rozproszone
W niektórych językach programowania obiektowego pewne obiekty mogą być aktywne tzn. wykonywać swoje własne instrukcje równocześnie z innymi obiektami aktywnymi.
Przypomnijmy, że zwykle obiekt jest kolekcją swych atrybutów: pól i metod. Taki obiekt nie wykonuje swoich własnych poleceń. W odróżnieniu od zwykłych obiektów klas istnieć mogą obiekty aktywne odpowiednio zadeklarowanych klas. W języku Java są to obiekty podklas klasy Thread. W Loglanie są to obiekty procesów. W Adzie ... TODO
Obiekty aktywne (alias procesy albo wątki) są więc dla nas obiektami, które posiadają możliwość wykonywania instrukcji współbieżnie z innymi procesami. Mówiąc dokładniej obliczenia procesów mogą być wykonywane:
- Współbieżnie (wiele procesów wykonywanych na jednym procesorze fizycznym),
- W rozproszeniu (na maszynach połączonych siecią),
- Równolegle (na maszynie z wieloma procesorami, które dzielą się wspólną pamięcią).
Jednolicie czy oddzielnie?
Pytanie takie pojawia sie bardzo wcześnie gdy zamierzamy w języku programowania zawrzeć narzędzia programowania rozproszonego i współbieżnego. W javie mamy dwie odrębne koncepcje: procesy współbieżne realizowane są jako obiekty pokdlas klasy Thread. Procesy rozproszone wymagają użycia mechanizmu [RMI]link title.