
Temat: O obiektach aktywnych, obcym wołaniu metod takich obiektów i problemie otwartym?
Prelegent: prof. dr hab. Andrzej Salwicki
Podczas prezentacji omówię obiekty aktywne (rodzaj wątków) i oryginalną, obiektową koncepcję komunikacji/synchronizacji obiektów aktywnych zaproponowaną przez Bolka Ciesielskiego w 1988. Metody obiektu aktywnego mogą dynamicznie zmieniać swój status:
prywatny -> publiczny -> prywatny -> publiczny -> ...
enable m disable m
Wywołanie z obiektu Y metody m w obiekcie X wygląda zwyczajnie (* call *) X.m(...). Różnice sprowadzają się do kilku punktów:
- chociaż obiekt aktywny Y wywołuje metodę m w obiekcie X, to obiekt X ma ją wykonać,
- aby mogło do tego dojść, metoda m obiektu X musi być publiczna (ang. enabled),
- takie obce wołanie metody może być zrealizowane w sposób synchroniczny, spotkanie instrukcji wywołania (w Y) z instrukcją accept (w X), lub w sposób asynchroniczny (wywołanie metody PRZERYWA wykonywanie wątku X'a - X wykonuje metodę m - i wraca do dalszego ciągu swego wątku.
Odczyt przedstawi szczegóły i omówi zalety takiego rozwiazania. Pomysł ten jest wykonalny (sprawdzono w Loglanie'82).
Na zakończenie przedstawimy interfejs AO (obiekt aktywny) i sformułujemy wyzwanie: zaimplementować ten interfejs w Javie lub udowodnić, że nie mozna tego zrobić bez modyfikacji JVM. Za rozwiązanie problemu przysługuje nagroda!
Planowany czas prezentacji to 1,5h, po których planuje się 15-30-minutową dyskusję.
Wstęp wolny
Zapraszam w imieniu prelegenta i grupy Warszawa JUG!
Brak komentarzy:
Prześlij komentarz