Package | Description |
---|---|
gov.nasa.jpf | |
gov.nasa.jpf.listener | |
gov.nasa.jpf.report | |
gov.nasa.jpf.search | |
gov.nasa.jpf.search.heuristic | |
gov.nasa.jpf.vm | |
gov.nasa.jpf.vm.serialize |
Modifier and Type | Method and Description |
---|---|
VM |
JPF.getVM()
return the VM object.
|
Modifier and Type | Method and Description |
---|---|
boolean |
PropertyListenerAdapter.check(Search search,
VM vm) |
boolean |
Property.check(Search search,
VM vm)
return true if property is NOT violated
|
abstract boolean |
GenericProperty.check(Search search,
VM vm) |
void |
PropertyListenerAdapter.choiceGeneratorAdvanced(VM vm,
ChoiceGenerator<?> currentCG) |
void |
ListenerAdapter.choiceGeneratorAdvanced(VM vm,
ChoiceGenerator<?> currentCG) |
void |
PropertyListenerAdapter.choiceGeneratorProcessed(VM vm,
ChoiceGenerator<?> processedCG) |
void |
ListenerAdapter.choiceGeneratorProcessed(VM vm,
ChoiceGenerator<?> processedCG) |
void |
PropertyListenerAdapter.choiceGeneratorRegistered(VM vm,
ChoiceGenerator<?> nextCG,
ThreadInfo currentThread,
Instruction executedInstruction) |
void |
ListenerAdapter.choiceGeneratorRegistered(VM vm,
ChoiceGenerator<?> nextCG,
ThreadInfo currentThread,
Instruction executedInstruction) |
void |
PropertyListenerAdapter.choiceGeneratorSet(VM vm,
ChoiceGenerator<?> newCG) |
void |
ListenerAdapter.choiceGeneratorSet(VM vm,
ChoiceGenerator<?> newCG) |
void |
PropertyListenerAdapter.classLoaded(VM vm,
ClassInfo loadedClass) |
void |
ListenerAdapter.classLoaded(VM vm,
ClassInfo loadedClass) |
void |
PropertyListenerAdapter.exceptionBailout(VM vm,
ThreadInfo currentThread) |
void |
ListenerAdapter.exceptionBailout(VM vm,
ThreadInfo currentThread) |
void |
PropertyListenerAdapter.exceptionHandled(VM vm,
ThreadInfo currentThread) |
void |
ListenerAdapter.exceptionHandled(VM vm,
ThreadInfo currentThread) |
void |
PropertyListenerAdapter.exceptionThrown(VM vm,
ThreadInfo currentThread,
ElementInfo thrownException) |
void |
ListenerAdapter.exceptionThrown(VM vm,
ThreadInfo currentThread,
ElementInfo thrownException) |
void |
PropertyListenerAdapter.executeInstruction(VM vm,
ThreadInfo currentThread,
Instruction instructionToExecute) |
void |
ListenerAdapter.executeInstruction(VM vm,
ThreadInfo currentThread,
Instruction instructionToExecute) |
void |
PropertyListenerAdapter.gcBegin(VM vm) |
void |
ListenerAdapter.gcBegin(VM vm) |
void |
PropertyListenerAdapter.gcEnd(VM vm) |
void |
ListenerAdapter.gcEnd(VM vm) |
void |
PropertyListenerAdapter.instructionExecuted(VM vm,
ThreadInfo currentThread,
Instruction nextInstruction,
Instruction executedInstruction) |
void |
ListenerAdapter.instructionExecuted(VM vm,
ThreadInfo currentThread,
Instruction nextInstruction,
Instruction executedInstruction) |
void |
PropertyListenerAdapter.loadClass(VM vm,
ClassFile cf) |
void |
ListenerAdapter.loadClass(VM vm,
ClassFile cf) |
void |
PropertyListenerAdapter.methodEntered(VM vm,
ThreadInfo currentThread,
MethodInfo enteredMethod) |
void |
ListenerAdapter.methodEntered(VM vm,
ThreadInfo currentThread,
MethodInfo enteredMethod) |
void |
PropertyListenerAdapter.methodExited(VM vm,
ThreadInfo currentThread,
MethodInfo exitedMethod) |
void |
ListenerAdapter.methodExited(VM vm,
ThreadInfo currentThread,
MethodInfo exitedMethod) |
void |
PropertyListenerAdapter.objectCreated(VM vm,
ThreadInfo currentThread,
ElementInfo newObject) |
void |
ListenerAdapter.objectCreated(VM vm,
ThreadInfo currentThread,
ElementInfo newObject) |
void |
PropertyListenerAdapter.objectLocked(VM vm,
ThreadInfo currentThread,
ElementInfo lockedObject) |
void |
ListenerAdapter.objectLocked(VM vm,
ThreadInfo currentThread,
ElementInfo lockedObject) |
void |
PropertyListenerAdapter.objectNotify(VM vm,
ThreadInfo currentThread,
ElementInfo notifyingObject) |
void |
ListenerAdapter.objectNotify(VM vm,
ThreadInfo currentThread,
ElementInfo notifyingObject) |
void |
PropertyListenerAdapter.objectNotifyAll(VM vm,
ThreadInfo currentThread,
ElementInfo notifyingObject) |
void |
ListenerAdapter.objectNotifyAll(VM vm,
ThreadInfo currentThread,
ElementInfo notifyingObject) |
void |
PropertyListenerAdapter.objectReleased(VM vm,
ThreadInfo currentThread,
ElementInfo releasedObject) |
void |
ListenerAdapter.objectReleased(VM vm,
ThreadInfo currentThread,
ElementInfo releasedObject) |
void |
PropertyListenerAdapter.objectUnlocked(VM vm,
ThreadInfo currentThread,
ElementInfo unlockedObject) |
void |
ListenerAdapter.objectUnlocked(VM vm,
ThreadInfo currentThread,
ElementInfo unlockedObject) |
void |
PropertyListenerAdapter.objectWait(VM vm,
ThreadInfo currentThread,
ElementInfo waitingObject) |
void |
ListenerAdapter.objectWait(VM vm,
ThreadInfo currentThread,
ElementInfo waitingObject) |
void |
PropertyListenerAdapter.threadBlocked(VM vm,
ThreadInfo blockedThread,
ElementInfo lock) |
void |
ListenerAdapter.threadBlocked(VM vm,
ThreadInfo blockedThread,
ElementInfo lock) |
void |
PropertyListenerAdapter.threadInterrupted(VM vm,
ThreadInfo interruptedThread) |
void |
ListenerAdapter.threadInterrupted(VM vm,
ThreadInfo interruptedThread) |
void |
PropertyListenerAdapter.threadNotified(VM vm,
ThreadInfo notifiedThread) |
void |
ListenerAdapter.threadNotified(VM vm,
ThreadInfo notifiedThread) |
void |
PropertyListenerAdapter.threadScheduled(VM vm,
ThreadInfo scheduledThread) |
void |
ListenerAdapter.threadScheduled(VM vm,
ThreadInfo scheduledThread) |
void |
PropertyListenerAdapter.threadStarted(VM vm,
ThreadInfo startedThread) |
void |
ListenerAdapter.threadStarted(VM vm,
ThreadInfo startedThread) |
void |
PropertyListenerAdapter.threadTerminated(VM vm,
ThreadInfo terminatedThread) |
void |
ListenerAdapter.threadTerminated(VM vm,
ThreadInfo terminatedThread) |
void |
PropertyListenerAdapter.threadWaiting(VM vm,
ThreadInfo waitingThread) |
void |
ListenerAdapter.threadWaiting(VM vm,
ThreadInfo waitingThread) |
void |
PropertyListenerAdapter.vmInitialized(VM vm) |
void |
ListenerAdapter.vmInitialized(VM vm) |
Modifier and Type | Field and Description |
---|---|
protected VM |
SimpleDot.vm |
Modifier and Type | Method and Description |
---|---|
boolean |
AssertionProperty.check(Search search,
VM vm) |
boolean |
HeapTracker.check(Search search,
VM vm)
return 'false' if property is violated
|
boolean |
EndlessLoopDetector.check(Search search,
VM vm) |
boolean |
ObjectTracker.check(Search search,
VM vm) |
boolean |
NoStateCycles.check(Search search,
VM vm) |
boolean |
PathOutputMonitor.check(Search search,
VM vm) |
boolean |
NumericValueChecker.check(Search search,
VM vm) |
boolean |
PreciseRaceDetector.check(Search search,
VM vm) |
void |
CGMonitor.choiceGeneratorAdvanced(VM vm,
ChoiceGenerator<?> currentCG) |
void |
ChoiceSelector.choiceGeneratorAdvanced(VM vm,
ChoiceGenerator<?> currentCG) |
void |
ExecTracker.choiceGeneratorAdvanced(VM vm,
ChoiceGenerator<?> currentCG) |
void |
CGRemover.choiceGeneratorRegistered(VM vm,
ChoiceGenerator<?> nextCG,
ThreadInfo ti,
Instruction executedInsn) |
void |
CoverageAnalyzer.choiceGeneratorSet(VM vm,
ChoiceGenerator<?> newCG) |
void |
StateSpaceAnalyzer.choiceGeneratorSet(VM vm,
ChoiceGenerator<?> newCG) |
void |
PreciseRaceDetector.choiceGeneratorSet(VM vm,
ChoiceGenerator<?> newCG) |
void |
CoverageAnalyzer.classLoaded(VM vm,
ClassInfo ci)
print uncovered source ranges
|
void |
CGRemover.classLoaded(VM vm,
ClassInfo loadedClass) |
void |
OOMEInjector.classLoaded(VM vm,
ClassInfo loadedClass) |
void |
ExceptionInjector.classLoaded(VM vm,
ClassInfo loadedClass)
get the target insns/methods
|
void |
StopWatchFuzzer.classLoaded(VM vm,
ClassInfo ci) |
void |
Perturbator.classLoaded(VM vm,
ClassInfo loadedClass) |
void |
ExecTracker.exceptionThrown(VM vm,
ThreadInfo ti,
ElementInfo ei) |
void |
AssertionProperty.executeInstruction(VM vm,
ThreadInfo ti,
Instruction insn) |
void |
VarRecorder.executeInstruction(VM vm,
ThreadInfo ti,
Instruction insnToExecute) |
void |
StackTracker.executeInstruction(VM vm,
ThreadInfo ti,
Instruction insnToExecute) |
void |
ChoiceSelector.executeInstruction(VM vm,
ThreadInfo ti,
Instruction insnToExecute) |
void |
OOMEInjector.executeInstruction(VM vm,
ThreadInfo ti,
Instruction insnToExecute) |
void |
ExceptionInjector.executeInstruction(VM vm,
ThreadInfo ti,
Instruction insnToExecute) |
void |
MethodTracker.executeInstruction(VM vm,
ThreadInfo ti,
Instruction insnToExecute) |
void |
StopWatchFuzzer.executeInstruction(VM vm,
ThreadInfo ti,
Instruction insnToExecute) |
void |
PreciseRaceDetector.executeInstruction(VM vm,
ThreadInfo ti,
Instruction insnToExecute) |
void |
Perturbator.executeInstruction(VM vm,
ThreadInfo ti,
Instruction insnToExecute) |
void |
HeapTracker.gcBegin(VM vm)
VMListener interface
|
void |
HeapTracker.gcEnd(VM vm) |
void |
ExecTracker.gcEnd(VM vm)
VMListener interface
|
void |
MethodAnalyzer.instructionExecuted(VM vm,
ThreadInfo thread,
Instruction nextInsn,
Instruction executedInsn) |
void |
InsnCounter.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
IdleFilter.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
VarRecorder.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
CGMonitor.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
CoverageAnalyzer.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
ObjectTracker.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
ReferenceLocator.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
VarTracker.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
OOMEInjector.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction insn,
Instruction executedInsn) |
void |
ExecTracker.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
BudgetChecker.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
CallMonitor.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
NumericValueChecker.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
SimpleIdleFilter.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
StopWatchFuzzer.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
TraceStorer.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
Perturbator.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
StackDepthChecker.methodEntered(VM vm,
ThreadInfo thread,
MethodInfo mi) |
void |
HeapTracker.objectCreated(VM vm,
ThreadInfo ti,
ElementInfo ei) |
void |
ObjectTracker.objectCreated(VM vm,
ThreadInfo ti,
ElementInfo ei) |
void |
ReferenceLocator.objectCreated(VM vm,
ThreadInfo ti,
ElementInfo ei) |
void |
LockedStackDepth.objectLocked(VM vm,
ThreadInfo thread,
ElementInfo ei) |
void |
DeadlockAnalyzer.objectLocked(VM vm,
ThreadInfo ti,
ElementInfo ei) |
void |
DeadlockAnalyzer.objectNotify(VM vm,
ThreadInfo ti,
ElementInfo ei) |
void |
DeadlockAnalyzer.objectNotifyAll(VM vm,
ThreadInfo ti,
ElementInfo ei) |
void |
HeapTracker.objectReleased(VM vm,
ThreadInfo ti,
ElementInfo ei) |
void |
ObjectTracker.objectReleased(VM vm,
ThreadInfo ti,
ElementInfo ei) |
void |
ReferenceLocator.objectReleased(VM vm,
ThreadInfo ti,
ElementInfo ei) |
void |
LockedStackDepth.objectUnlocked(VM vm,
ThreadInfo thread,
ElementInfo ei) |
void |
DeadlockAnalyzer.objectUnlocked(VM vm,
ThreadInfo ti,
ElementInfo ei) |
void |
SimpleDot.objectWait(VM vm,
ThreadInfo ti,
ElementInfo ei) |
void |
DeadlockAnalyzer.objectWait(VM vm,
ThreadInfo ti,
ElementInfo ei) |
protected boolean |
CGRemover.removeCG(VM vm,
gov.nasa.jpf.listener.CGRemover.Category cat,
ChoiceGenerator<?> cg) |
void |
DeadlockAnalyzer.threadBlocked(VM vm,
ThreadInfo ti,
ElementInfo ei) |
void |
SimpleDot.threadStarted(VM vm,
ThreadInfo ti) |
void |
DeadlockAnalyzer.threadStarted(VM vm,
ThreadInfo ti) |
void |
ChoiceSelector.threadStarted(VM vm,
ThreadInfo ti) |
void |
ExecTracker.threadStarted(VM vm,
ThreadInfo ti) |
void |
TraceStorer.threadStarted(VM vm,
ThreadInfo ti) |
void |
IdleFilter.threadTerminated(VM vm,
ThreadInfo ti) |
void |
DeadlockAnalyzer.threadTerminated(VM vm,
ThreadInfo ti) |
void |
ExecTracker.threadTerminated(VM vm,
ThreadInfo ti) |
Modifier and Type | Field and Description |
---|---|
protected VM |
Reporter.vm |
Modifier and Type | Method and Description |
---|---|
VM |
Reporter.getVM() |
Modifier and Type | Method and Description |
---|---|
void |
Statistics.choiceGeneratorSet(VM vm,
ChoiceGenerator<?> newCG) |
void |
Statistics.gcBegin(VM vm) |
void |
Statistics.instructionExecuted(VM vm,
ThreadInfo ti,
Instruction nextInsn,
Instruction executedInsn) |
void |
Statistics.objectCreated(VM vm,
ThreadInfo ti,
ElementInfo ei) |
void |
Statistics.objectReleased(VM vm,
ThreadInfo ti,
ElementInfo ei) |
Modifier and Type | Field and Description |
---|---|
protected VM |
Search.vm |
Modifier and Type | Method and Description |
---|---|
VM |
Search.getVM() |
Constructor and Description |
---|
DFSearch(Config config,
VM vm) |
PathSearch(Config config,
VM vm) |
RandomSearch(Config config,
VM vm) |
Search(Config config,
VM vm) |
Simulation(Config config,
VM vm) |
Modifier and Type | Method and Description |
---|---|
protected int |
SimplePriorityHeuristic.computeAstarPathCost(VM vm) |
Constructor and Description |
---|
BFSHeuristic(Config config,
VM vm) |
DFSHeuristic(Config conf,
VM vm) |
GlobalSwitchThread(Config config,
VM vm) |
HeuristicSearch(Config config,
VM vm) |
HeuristicState(VM vm) |
Interleaving(Config config,
VM vm) |
MinimizePreemption(Config config,
VM vm) |
MostBlocked(Config config,
VM vm) |
PreferThreads(Config config,
VM vm) |
PrioritizedState(VM vm,
int heuristicValue) |
RandomHeuristic(Config config,
VM vm) |
SimplePriorityHeuristic(Config config,
VM vm) |
UserHeuristic(Config config,
VM vm) |
Modifier and Type | Class and Description |
---|---|
class |
MultiProcessVM
A VM implementation that simulates running multiple applications within the same
JPF process (centralized model checking of distributed applications).
|
class |
SingleProcessVM |
Modifier and Type | Field and Description |
---|---|
protected VM |
TidSet.vm |
protected VM |
GenericHeap.vm |
protected VM |
DefaultSchedulerFactory.vm |
protected static VM |
VM.vm
<2do> - this is a hack to be removed once there are no static references
anymore
|
protected VM |
AbstractSerializer.vm |
Modifier and Type | Method and Description |
---|---|
VM |
ThreadInfo.getVM() |
VM |
MJIEnv.getVM() |
static VM |
VM.getVM()
<2do> this is a band aid to bundle all these legacy reference chains
from JPFs past.
|
Modifier and Type | Method and Description |
---|---|
protected void |
SystemState.advance(VM vm,
ChoiceGenerator<?> cg) |
protected void |
SystemState.advanceAllCascadedParents(VM vm,
ChoiceGenerator<?> cg) |
protected boolean |
SystemState.advanceCascadedParent(VM vm,
ChoiceGenerator<?> cg) |
protected boolean |
SystemState.advanceCurCg(VM vm) |
void |
Backtracker.attach(VM vm) |
void |
DefaultBacktracker.attach(VM vm) |
void |
DebugJenkinsStateSet.attach(VM vm) |
void |
AbstractRestorer.attach(VM vm) |
void |
StateSerializer.attach(VM vm) |
void |
SerializingStateSet.attach(VM vm) |
void |
StateSet.attach(VM vm) |
void |
StateRestorer.attach(VM vm) |
void |
AbstractSerializer.attach(VM vm) |
boolean |
NotDeadlockedProperty.check(Search search,
VM vm) |
boolean |
NoOutOfMemoryErrorProperty.check(Search search,
VM vm) |
boolean |
NoUncaughtExceptionsProperty.check(Search search,
VM vm) |
void |
VMListener.choiceGeneratorAdvanced(VM vm,
ChoiceGenerator<?> currentCG)
the next choice was requested from a previously registered ChoiceGenerator
NOTE - this notification happens before the KernelState is stored, i.e.
|
void |
ConstInsnPathTime.choiceGeneratorAdvanced(VM vm,
ChoiceGenerator<?> currentCG) |
void |
VMListener.choiceGeneratorProcessed(VM vm,
ChoiceGenerator<?> processedCG)
a ChoiceGnerator has returned all his choices
NOTE - this notification happens before the KernelState is stored, i.e.
|
void |
VMListener.choiceGeneratorRegistered(VM vm,
ChoiceGenerator<?> nextCG,
ThreadInfo currentThread,
Instruction executedInstruction)
next ChoiceGenerator was registered, which means this is the end of the current transition
the reason why we have this in addition to the choiceGeneratorSet is that listeners
can reset the registered CG and so force the current transition to continue (although the
listener in this case has to make sure the operand stack is in a consistent state for
continued execution because there might be a bottom half of an Instruction.execute() missing)
|
void |
ConstInsnPathTime.choiceGeneratorRegistered(VM vm,
ChoiceGenerator<?> nextCG,
ThreadInfo ti,
Instruction executedInsn) |
void |
VMListener.choiceGeneratorSet(VM vm,
ChoiceGenerator<?> newCG)
a new ChoiceGenerator was set, which means we are at the beginning of a new transition.
|
void |
VMListener.classLoaded(VM vm,
ClassInfo loadedClass)
new class was loaded.
|
protected Statics |
ClassLoaderInfo.createStatics(VM vm) |
protected ClassPath |
SystemClassLoaderInfo.createSystemClassPath(VM vm,
int appId) |
void |
VMListener.exceptionBailout(VM vm,
ThreadInfo currentThread)
exception causes top frame to be purged
|
void |
VMListener.exceptionHandled(VM vm,
ThreadInfo currentThread)
exception handled by current top frame
|
void |
VMListener.exceptionThrown(VM vm,
ThreadInfo currentThread,
ElementInfo thrownException)
exception was thrown
|
void |
VMListener.executeInstruction(VM vm,
ThreadInfo currentThread,
Instruction instructionToExecute)
VM is about to execute the next instruction
|
void |
SystemState.executeNextTransition(VM vm)
enter all instructions that constitute the next transition.
|
void |
VMListener.gcBegin(VM vm) |
void |
VMListener.gcEnd(VM vm) |
String |
JPF_java_lang_System.getSUTJavaClassPath(VM vm) |
protected void |
ThreadInfo.initFields(VM vm) |
boolean |
SystemState.initializeNextTransition(VM vm)
reset the SystemState and initialize the next CG.
|
void |
VMListener.instructionExecuted(VM vm,
ThreadInfo currentThread,
Instruction nextInstruction,
Instruction executedInstruction)
VM has executed the next instruction
(can be used to analyze branches, monitor PUTFIELD / GETFIELD and
INVOKExx / RETURN instructions)
|
void |
VMListener.loadClass(VM vm,
ClassFile cf)
a new classfile is about to be parsed.
|
void |
VMListener.methodEntered(VM vm,
ThreadInfo currentThread,
MethodInfo enteredMethod)
method body was entered.
|
void |
VMListener.methodExited(VM vm,
ThreadInfo currentThread,
MethodInfo exitedMethod)
method body was left.
|
protected void |
SystemState.notifyChoiceGeneratorSet(VM vm,
ChoiceGenerator<?> cg) |
void |
VMListener.objectCreated(VM vm,
ThreadInfo currentThread,
ElementInfo newObject)
new object was created
|
void |
VMListener.objectLocked(VM vm,
ThreadInfo currentThread,
ElementInfo lockedObject)
notify if an object lock was taken (this includes automatic
surrender during a wait())
|
void |
VMListener.objectNotify(VM vm,
ThreadInfo currentThread,
ElementInfo notifyingObject)
notify if an object notifies a single waiter
|
void |
VMListener.objectNotifyAll(VM vm,
ThreadInfo currentThread,
ElementInfo notifyingObject)
notify if an object notifies all waiters
|
void |
VMListener.objectReleased(VM vm,
ThreadInfo currentThread,
ElementInfo releasedObject)
object was garbage collected (after potential finalization)
|
void |
VMListener.objectUnlocked(VM vm,
ThreadInfo currentThread,
ElementInfo unlockedObject)
notify if an object lock was released (this includes automatic
reacquisition after a notify())
|
void |
VMListener.objectWait(VM vm,
ThreadInfo currentThread,
ElementInfo waitingObject)
notify if a wait() is executed
|
protected void |
SystemState.setExecThread(VM vm) |
void |
VMListener.threadBlocked(VM vm,
ThreadInfo blockedThread,
ElementInfo lock)
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 |
VMListener.threadInterrupted(VM vm,
ThreadInfo interruptedThread)
thread got interrupted
|
void |
VMListener.threadNotified(VM vm,
ThreadInfo notifiedThread)
thread got notified
|
void |
VMListener.threadScheduled(VM vm,
ThreadInfo scheduledThread)
new thread was scheduled by VM
|
void |
VMListener.threadStarted(VM vm,
ThreadInfo startedThread)
new Thread entered run() method
|
void |
VMListener.threadTerminated(VM vm,
ThreadInfo terminatedThread)
Thread exited run() method
|
void |
VMListener.threadWaiting(VM vm,
ThreadInfo waitingThread)
thread is waiting for signal
|
void |
VMListener.vmInitialized(VM vm)
VM got initialized (but search is not yet running).
|
Constructor and Description |
---|
ClassLoaderInfo(VM vm)
for use from SystemClassLoaderInfo ctor, which doesn't have a ClassLoader object
yet and has to set cp and id itself
|
ClassLoaderInfo(VM vm,
int objRef,
ClassPath cp,
ClassLoaderInfo parent)
for all other classloaders, which require an already instantiated ClassLoader object
|
ConstInsnPathTime(VM vm,
Config conf) |
ContextBoundingSchedulerFactory(Config config,
VM vm,
SystemState ss) |
DefaultSchedulerFactory(Config config,
VM vm,
SystemState ss) |
DistributedSchedulerFactory(Config config,
VM vm,
SystemState ss) |
PrioritySchedulerFactory(Config config,
VM vm,
SystemState ss) |
SystemClassLoaderInfo(VM vm,
int appId) |
SystemState(Config config,
VM vm)
Creates a new system state.
|
SystemTime(VM vm,
Config conf) |
ThreadInfo(VM vm,
int id,
ApplicationContext appCtx)
mainThread ctor called by the VM.
|
ThreadInfo(VM vm,
int objRef,
int groupRef,
int runnableRef,
int nameRef,
ThreadInfo parent)
the ctor for all explicitly (bytecode) created threads.
|
Modifier and Type | Method and Description |
---|---|
void |
DynamicAbstractionSerializer.attach(VM vm) |
void |
FilteringSerializer.attach(VM vm) |
void |
DynamicAbstractionSerializer.Attributor.classLoaded(VM vm,
ClassInfo loadedClass) |