@SuppressWarnings("PMD.GuardLogStatement")
    public void remove(Object obj) {
        synchronized (this) {
            running -= 1;
            if (generators != null) {
                generators.remove(obj);
                generatorTracking.finest(() -> "Removed generator " + obj
                    + ", " + generators.size() + " generators registered: "
                    + generators.keySet());
            }
            if (running == 0) {
                generatorTracking
                    .finest(() -> "Zero generators, notifying all.");
                keepAlive.interrupt();
                notifyAll();
            }
        }
    }
@ SuppressWarnings ( "PMD.GuardLogStatement" ) public void remove ( Object obj ) { synchronized ( this ) { running -= 1 ; if ( generators != null ) { generators . remove ( obj ) ; generatorTracking . finest ( ( ) -> "Removed generator " + obj + ", " + generators . size ( ) + " generators registered: " + generators . keySet ( ) ) ; } if ( running == 0 ) { generatorTracking . finest ( ( ) -> "Zero generators, notifying all." ) ; keepAlive . interrupt ( ) ; notifyAll ( ) ; } } }
Removes the generator.

@param obj the generator