Class PublicSemaphores

  • All Implemented Interfaces:
    Detector, Priorities, StatelessDetector, java.lang.Cloneable, org.apache.bcel.classfile.Visitor

    public class PublicSemaphores
    extends BytecodeScanningDetector
    implements StatelessDetector
    finds public classes that use 'this' as a semaphore, which can cause conflicts if clients of this class use an instance of this class as their own synchronization point. Frankly, Just calling synchronized on this, or defining synchronized methods is bad, but since that is so prevalent, don't warn on that.