Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
Delphi 10 Seattle Enterprise
|
AW: FastSwitch
25. Dez 2013, 11:39
Du wirst wohl eine Kontrollinstanz einsetzen müssen, die das Laden/Entladen der Plugins regelt.
Das könnte ja auch ein Thread sein.
Der weiß, welches Plugin geladen ist und stößt das Entladen an, wenn ein anderes Plugin geladen werden soll.
Sobald das alte Plugin entladen ist, wird das gewünschte Plugin geladen.
Dieser Plugin-Wunsch, kann sich während dieser Zeit ändern, sooft wie möglich, erst wenn das alte Plugin weg ist, dann wird dieser aktuelle Wunsch geladen.
Die Kontrollinstanz hätte z.B. folgende Zustände ( NoPlugin, LoadPlugin, UnloadPlugin, ReadyPlugin )
Während der Zustände LoadPlugin
und UnloadPlugin
würde einfach nur der Plugin-Wunsch vermerkt ohne eine Reaktion auszulösen.
In den Zuständen NoPlugin
und ReadyPlugin
bzw. beim Erreichen dieser Zustände, wird der aktuelle Wunsch mit dem aktuellen Plugin verglichen und im Bedarfsfall reagiert.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
|