Interface Semaphore

All Known Implementing Classes:
Semaphore.Standard

public interface Semaphore
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static class 
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    acquire(int acquire)
    Take permits, waiting indefinitely until available
    void
    Take permits, waiting indefinitely until available
    int
    set the number of permits in this semaphore to zero
    static Semaphore
    newFairSemaphore(int permits)
    Factory method used to capture and redirect instantiations for simulation Construct a fair Semaphore initially holding the specified number of permits
    static Semaphore
    newSemaphore(int permits)
    Factory method used to capture and redirect instantiations for simulation Construct an unfair Semaphore initially holding the specified number of permits
    int
     
    void
    release(int permits)
    Increase the number of available permits and signal any waiters that may be served by the release
    boolean
    tryAcquire(int acquire)
    Try to take permits, returning immediately
    boolean
    tryAcquire(int acquire, long time, TimeUnit unit)
    Try to take permits, waiting up to timeout
    boolean
    tryAcquireUntil(int acquire, long nanoTimeDeadline)
    Try to take permits, waiting until the deadline
  • Method Details

    • permits

      int permits()
      Returns:
      the number of permits presently in this semaphore
    • drain

      int drain()
      set the number of permits in this semaphore to zero
    • release

      void release(int permits)
      Increase the number of available permits and signal any waiters that may be served by the release
    • tryAcquire

      boolean tryAcquire(int acquire)
      Try to take permits, returning immediately
      Returns:
      true iff permits acquired
    • tryAcquire

      boolean tryAcquire(int acquire, long time, TimeUnit unit) throws InterruptedException
      Try to take permits, waiting up to timeout
      Returns:
      true iff permits acquired
      Throws:
      InterruptedException - if interrupted
    • tryAcquireUntil

      boolean tryAcquireUntil(int acquire, long nanoTimeDeadline) throws InterruptedException
      Try to take permits, waiting until the deadline
      Returns:
      true iff permits acquired
      Throws:
      InterruptedException - if interrupted
    • acquire

      void acquire(int acquire) throws InterruptedException
      Take permits, waiting indefinitely until available
      Throws:
      InterruptedException - if interrupted
    • acquireThrowUncheckedOnInterrupt

      void acquireThrowUncheckedOnInterrupt(int acquire) throws UncheckedInterruptedException
      Take permits, waiting indefinitely until available
      Throws:
      UncheckedInterruptedException - if interrupted
    • newSemaphore

      static Semaphore newSemaphore(int permits)
      Factory method used to capture and redirect instantiations for simulation Construct an unfair Semaphore initially holding the specified number of permits
    • newFairSemaphore

      static Semaphore newFairSemaphore(int permits)
      Factory method used to capture and redirect instantiations for simulation Construct a fair Semaphore initially holding the specified number of permits