A monitor is any object that is used to synchronize access to a shared resource.
This includes locks as well as variables used in synchronized blocks (including this).
Import path
import semmle.code.java.ConcurrencyKnown direct subtypes
Branch types
| TClassMonitor | A class used as a monitor. |
| TInstanceMonitor | An instance reference used as a monitor. |
| TVariableMonitor | Either a lock or a variable used in a synchronized block. |
Injectors
| TClassMonitor | A class used as a monitor. |
| TInstanceMonitor | An instance reference used as a monitor. |
| TVariableMonitor | Either a lock or a variable used in a synchronized block. |