Wait or Notification Method is Called from Non-Synchronized Method (NMCNSM)

Description:

NMCNSM detects if method wait, notify or notifyAll is invoked from method, which is not declared as synchronized. It is not surely a bug, because monitor can be locked from other method, which directly or indirectly invokes current method. But you should agree that it is not common case.

Example:

class C { public void f() { ... notify(); ... } }