Interface Synchronizable

  • public interface Synchronizable

    Implementations of this interface expose a lock object via getLock() so that callers can synchronize externally on that lock:

     if (iterator instanceof Synchronizable)
         Object element = null;
         synchronized (((Synchronizable)iterator).getLock())
             if (iterator.hasNext())
                 element =;

    In the example above, the calls to hasNext() and next() are performed "atomically".

    • Method Detail

      • getLock

        java.lang.Object getLock()
        the lock object to synchronize on