public class DeadlockDetector
extends java.lang.Object
| Constructor and Description |
|---|
DeadlockDetector(boolean optionPrintDebug,
boolean optionRepairDeadlock,
boolean optionAllowSelfEdges,
java.util.List<soot.jimple.toolkits.thread.synchronization.CriticalSection> criticalSections) |
| Modifier and Type | Method and Description |
|---|---|
MutableDirectedGraph<soot.jimple.toolkits.thread.synchronization.CriticalSectionGroup> |
detectComponentBasedDeadlock() |
MutableEdgeLabelledDirectedGraph<java.lang.Integer,soot.jimple.toolkits.thread.synchronization.CriticalSection> |
detectLocksetDeadlock(java.util.Map<Value,java.lang.Integer> lockToLockNum,
java.util.List<PointsToSetInternal> lockPTSets) |
void |
reorderLocksets(java.util.Map<Value,java.lang.Integer> lockToLockNum,
MutableEdgeLabelledDirectedGraph<java.lang.Integer,soot.jimple.toolkits.thread.synchronization.CriticalSection> lockOrder) |
public DeadlockDetector(boolean optionPrintDebug,
boolean optionRepairDeadlock,
boolean optionAllowSelfEdges,
java.util.List<soot.jimple.toolkits.thread.synchronization.CriticalSection> criticalSections)
public MutableDirectedGraph<soot.jimple.toolkits.thread.synchronization.CriticalSectionGroup> detectComponentBasedDeadlock()
public MutableEdgeLabelledDirectedGraph<java.lang.Integer,soot.jimple.toolkits.thread.synchronization.CriticalSection> detectLocksetDeadlock(java.util.Map<Value,java.lang.Integer> lockToLockNum, java.util.List<PointsToSetInternal> lockPTSets)
public void reorderLocksets(java.util.Map<Value,java.lang.Integer> lockToLockNum, MutableEdgeLabelledDirectedGraph<java.lang.Integer,soot.jimple.toolkits.thread.synchronization.CriticalSection> lockOrder)