public class DeadlockAnalyzer extends ListenerAdapter
| Constructor and Description |
|---|
DeadlockAnalyzer(Config config,
JPF jpf) |
| Modifier and Type | Method and Description |
|---|---|
void |
objectLocked(VM vm,
ThreadInfo ti,
ElementInfo ei)
notify if an object lock was taken (this includes automatic
surrender during a wait())
|
void |
objectNotify(VM vm,
ThreadInfo ti,
ElementInfo ei)
notify if an object notifies a single waiter
|
void |
objectNotifyAll(VM vm,
ThreadInfo ti,
ElementInfo ei)
notify if an object notifies all waiters
|
void |
objectUnlocked(VM vm,
ThreadInfo ti,
ElementInfo ei)
notify if an object lock was released (this includes automatic
reacquisition after a notify())
|
void |
objectWait(VM vm,
ThreadInfo ti,
ElementInfo ei)
notify if a wait() is executed
|
void |
publishPropertyViolation(Publisher publisher) |
void |
stateAdvanced(Search search)
got the next state
Note - this will be notified before any potential propertyViolated, in which
case the currentError will be already set
|
void |
stateBacktracked(Search search)
state was backtracked one step
|
void |
stateRestored(Search search)
a previously generated state was restored
(can be on a completely different path)
|
void |
stateStored(Search search)
somebody stored the state
|
void |
threadBlocked(VM vm,
ThreadInfo ti,
ElementInfo ei)
thread waits to acquire a lock
// NOTE: vm.getLastThreadInfo() does NOT have to be the running thread, as this
// notification can occur as a result of a lock operation in the current thread
|
void |
threadStarted(VM vm,
ThreadInfo ti)
new Thread entered run() method
|
void |
threadTerminated(VM vm,
ThreadInfo ti)
Thread exited run() method
|
choiceGeneratorAdvanced, choiceGeneratorProcessed, choiceGeneratorRegistered, choiceGeneratorSet, classLoaded, exceptionBailout, exceptionHandled, exceptionThrown, executeInstruction, gcBegin, gcEnd, instructionExecuted, loadClass, methodEntered, methodExited, objectCreated, objectReleased, propertyViolated, publishConstraintHit, publishFinished, publishStart, publishTransition, searchConstraintHit, searchFinished, searchStarted, stateProcessed, statePurged, threadInterrupted, threadNotified, threadScheduled, threadWaiting, vmInitializedpublic void objectLocked(VM vm, ThreadInfo ti, ElementInfo ei)
VMListenerobjectLocked in interface VMListenerobjectLocked in class ListenerAdapterpublic void objectUnlocked(VM vm, ThreadInfo ti, ElementInfo ei)
VMListenerobjectUnlocked in interface VMListenerobjectUnlocked in class ListenerAdapterpublic void objectWait(VM vm, ThreadInfo ti, ElementInfo ei)
VMListenerobjectWait in interface VMListenerobjectWait in class ListenerAdapterpublic void objectNotify(VM vm, ThreadInfo ti, ElementInfo ei)
VMListenerobjectNotify in interface VMListenerobjectNotify in class ListenerAdapterpublic void objectNotifyAll(VM vm, ThreadInfo ti, ElementInfo ei)
VMListenerobjectNotifyAll in interface VMListenerobjectNotifyAll in class ListenerAdapterpublic void threadBlocked(VM vm, ThreadInfo ti, ElementInfo ei)
VMListenerthreadBlocked in interface VMListenerthreadBlocked in class ListenerAdapterpublic void threadStarted(VM vm, ThreadInfo ti)
VMListenerthreadStarted in interface VMListenerthreadStarted in class ListenerAdapterpublic void threadTerminated(VM vm, ThreadInfo ti)
VMListenerthreadTerminated in interface VMListenerthreadTerminated in class ListenerAdapterpublic void stateAdvanced(Search search)
SearchListenerstateAdvanced in interface SearchListenerstateAdvanced in class ListenerAdapterpublic void stateBacktracked(Search search)
SearchListenerstateBacktracked in interface SearchListenerstateBacktracked in class ListenerAdapterpublic void stateStored(Search search)
SearchListenerstateStored in interface SearchListenerstateStored in class ListenerAdapterpublic void stateRestored(Search search)
SearchListenerstateRestored in interface SearchListenerstateRestored in class ListenerAdapterpublic void publishPropertyViolation(Publisher publisher)
publishPropertyViolation in interface PublisherExtensionpublishPropertyViolation in class ListenerAdapter