Class LockListener

java.lang.Object
org.eclipse.core.runtime.jobs.LockListener
Direct Known Subclasses:
UILockListener

public class LockListener extends Object
A lock listener is notified whenever a thread is about to wait on a lock, and when a thread is about to release a lock.

This class is for internal use by the platform-related plug-ins. Clients outside of the base platform should not reference or subclass this class.

Since:
3.0
See Also:
  • Constructor Details

    • LockListener

      public LockListener()
  • Method Details

    • aboutToWait

      public boolean aboutToWait(Thread lockOwner)
      Notification that a thread is about to block on an attempt to acquire a lock. Returns whether the thread should be granted immediate access to the lock.

      This default implementation always returns false. Subclasses may override.

      Parameters:
      lockOwner - the thread that currently owns the lock this thread is waiting for, or null if unknown.
      Returns:
      true if the thread should be granted immediate access, and false if it should wait for the lock to be available
    • aboutToRelease

      public void aboutToRelease()
      Notification that a thread is about to release a lock.

      This default implementation does nothing. Subclasses may override.

    • canBlock

      public boolean canBlock()
      Returns if it is safe for the calling thread to block while waiting to obtain a lock. When blocking in the calling thread is not safe, the caller will ensure that the thread is kept alive and responsive to cancellation while waiting.
      Returns:
      true if this thread can block, and false otherwise.
      Since:
      org.eclipse.core.jobs 3.5
    • isLockOwnerThread

      protected final boolean isLockOwnerThread()
      Returns whether this thread currently owns any locks
      Returns:
      true if this thread owns any locks, and false otherwise.