Zusätzlich zur Erkennung der blockierten Aktionen kann auch eine Benachrichtigung an ein entsprechendes Protokoll erfolgen. Zusammen mit der betreffenden Aktion wird ein Verweis auf den blockierten Thread der Ausführungssteuerkomponente bereitgestellt. Damit wird die Übertragung einer Nachricht zwischen Protokoll und blockiertem Thread möglich. Sobald das Protokoll über eine blockierte Aktion informiert wird, kann es die Wiederholung der Aktion veranlassen, die Aktion beenden und zur nächsten Aktion wechseln oder die Ausführung durch den virtuellen Benutzer beenden.
In der Schnittstelle IKAction finden Sie als Einstiegspunkt für Protokolle zur Reaktion auf eine blockierte Aktion die folgende Methode:
public void blocked(). Der Objektstatus KAction ist bei Eingabe von "blocked()" möglicherweise beschädigt. Das Protokoll muss daher davon ausgehen, dass bestimmte oder alle Daten im Zusammenhang mit der Aktion nicht sicher sind. Außerdem kann es sein, dass bestimmte Sperren, die bei der Ausführung ("execute()") Gültigkeit hatten, freigegeben wurden.
public long getBlockedTimeout()
Gibt den Zeitlimitwert für blockierte Aktionen an. Standardwert ist "0" (keine Begrenzung).
public WorkerThread getWorkerThread()
Gibt den Worker-Thread der Ausführungssteuerkomponente an, von dem die Aktion gerade ausgeführt wurde, als die Blockade der Aktion entdeckt wurde.
IEngine
Über die Schnittstelle der Ausführungssteuerkomponente für Leistungstests wurde der Eintrag public boolean createWorker() hinzugefügt. Über createWorker() sollen Worker, die mit der Thread-Überwachung betraut sind, neue Worker hinzufügen können, wenn vorher Worker entfernt worden waren, von denen blockierte Aktionern ausgeführt wurden.