Hallo Ralf,
hast Du schon einmal versucht, Deinen Werkern eine Art Status mitzugeben und bei jeder Änderung des Status dies z.B. in eine Tabelle (kann ein Attribut des Werkers sein) zu schreiben? Über diese Daten kannst Du dann eine Statistik laufen lassen und erhältst die Daten, die Dich interessieren.
Ein ganz einfaches Statusmodell besteht nur aus den Zuständen "arbeitend" und "wartend". Hierbei weist Du Deinem Werker immer dann, wenn er den Pool betritt, eine Zeit zu und dann, wenn er den Pool wieder verläßt ebenfalls.
Eine mögliche Implementierung könnte wie folgt aussehen:
is
local
y: integer;
do
@.States := @.States.YDim + 1;
@.States["State", y] := "arbeitend"; -- oder "wartend"
@.States["TS", y] := root.EventController.simTime;
end;
Wenn Du 2 solche Methoden bei Eintritt bzw. Austritt vom Werkerpool anwendest, kannst Du im Nachgang daraus die effektiven Zeiten ermitteln.
Ich hoffe, dass das Dir hilft.
Gruß,
LaBonita
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP