Es folgt nun die Motivation für die Implementierung des AgentManager als
Thread:
Ein Agent der seinem AgentManager anzeigen will,
daß er migrieren will, könnte das abwickeln, indem er eine
Methode des AgentManager aufruft. Innerhalb dieser Methode würde
der AgentManager u. a. den Agenten suspendieren. Das Problem dabei ist,
daß diese Methode innerhalb des Thread des Agenten ablaufen würde.
Kommt man nun an den Ausführungspunkt der Suspendierung, so wird der Agent
und der AgentManager angehalten. Die Lösung dieses Problems ist,
daß auch der AgentManager ein Thread ist und über eine
Klasse Migrate (vgl. 6.3.3) der synchronisierte
Informationsaustausch mit den Agenten geregelt wird.
Die Klasse AgentManager implementiert alle Operationen der IDL-Schnittstellen MAFAgentSystem und AgentSystemService, welche die Handhabung der Agenten betreffen. Nun werden die wichtigsten Methoden vorgestellt.