| Modifier and Type | Field and Description |
|---|---|
| private static final Set | |
| private static final Map | LOCK_ORDERING
Map of (object A) -> ( map of (object locked before object A) -> (stack trace where locked) ) |
| private static final ThreadLocal | |
| private static final boolean |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public static Object | |
| private static String | |
| private static Object | |
| private static synchronized void |
| KNOWN_DEADLOCKS | back to summary |
|---|---|
| private static final Set<String> KNOWN_DEADLOCKS | |
| LOCK_ORDERING | back to summary |
|---|---|
| private static final Map<Object, Map<Object, Exception>> LOCK_ORDERING Map of (object A) -> ( map of (object locked before object A) -> (stack trace where locked) ) | |
| STACK | back to summary |
|---|---|
| private static final ThreadLocal<Deque<Object>> STACK | |
| TRACE | back to summary |
|---|---|
| private static final boolean TRACE | |
| AbbaDetector | back to summary |
|---|---|
| public AbbaDetector() | |
| begin | back to summary |
|---|---|
| public static Object begin(Object o) This method is called just before or just after an object is synchronized. | |
| getObjectName | back to summary |
|---|---|
| private static String getObjectName(Object o) | |
| getTest | back to summary |
|---|---|
| private static Object getTest(Object o) | |
| markHigher | back to summary |
|---|---|
| private static synchronized void markHigher(Object o, Deque<Object> older) | |