org.sonar.l10n.java.rules.squid.S2235.html Maven / Gradle / Ivy
The newest version!
According to Oracle Javadoc:
IllegalMonitorStateException
is thrown when a thread has attempted to wait on an object's monitor or to notify other threads waiting on an object's monitor without owning the specified monitor.
In other words, this exception can be thrown only in case of bad design because Object.wait(...)
, Object.notify()
and Object.notifyAll()
methods should never be called on an object whose monitor is not held.
Noncompliant Code Example
public void doSomething(){
...
try {
...
anObject.notify();
...
} catch(IllegalMonitorStateException e) {
...
}
}
Compliant Solution
public void doSomething(){
...
synchronized(anObject) {
...
anObject.notify();
...
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy