Interface Synchronizable

All Known Implementing Classes:
DeferredContentProvider.DeferredContentProviderIterator, MultiPartContentProvider.MultiPartIterator

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 = iterator.next();
    }
}

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

  • Method Summary

    Modifier and Type
    Method
    Description
     
  • Method Details

    • getLock

      Object getLock()
      Returns:
      the lock object to synchronize on