Package java.util.concurrent.locks

Examples of java.util.concurrent.locks.ReentrantLock.tryLock()


    long remainingNanos = timeoutNanos;
    boolean interruptIgnored = false;
    try {
      while (true) {
        try {
          return lock.tryLock(remainingNanos, TimeUnit.NANOSECONDS);
        } catch (InterruptedException ignored) {
          interruptIgnored = true;
          remainingNanos = (timeoutNanos - (System.nanoTime() - startNanos));
        }
      }
View Full Code Here


      throw new IllegalMonitorStateException();
    }
    final ReentrantLock lock = this.lock;
    boolean reentrant = lock.isHeldByCurrentThread();
    long startNanos = System.nanoTime();
    if (!lock.tryLock(time, unit)) {
      return false;
    }
    boolean satisfied;
    try {
      long remainingNanos = unit.toNanos(time) - (System.nanoTime() - startNanos);
View Full Code Here

    long remainingNanos = timeoutNanos;
    boolean interruptIgnored = false;
    try {
      while (true) {
        try {
          if (lock.tryLock(remainingNanos, TimeUnit.NANOSECONDS)) {
            break;
          } else {
            return false;
          }
        } catch (InterruptedException ignored) {
View Full Code Here

      throws InterruptedException {
    if (guard.monitor != this) {
      throw new IllegalMonitorStateException();
    }
    final ReentrantLock lock = this.lock;
    if (!lock.tryLock(time, unit)) {
      return false;
    }
    boolean satisfied;
    try {
      satisfied = guard.isSatisfied();
View Full Code Here

  public boolean tryEnterIf(Guard guard) {
    if (guard.monitor != this) {
      throw new IllegalMonitorStateException();
    }
    final ReentrantLock lock = this.lock;
    if (!lock.tryLock()) {
      return false;
    }
    boolean satisfied;
    try {
      satisfied = guard.isSatisfied();
View Full Code Here

      {
         return;
      }
     
      ReentrantLock lock = new ReentrantLock();
      if (lock.tryLock(500, TimeUnit.MILLISECONDS))
      {
         try
         {
            hotDeploymentStrategy = createHotDeployment(Thread.currentThread().getContextClassLoader(), isHotDeployEnabled(init));
           
View Full Code Here

    * If lock is available, poll stale refs and remove them.
    * Called from ForkJoinPool when pools become quiescent.
    */
   static final void helpExpungeStaleExceptions() {
      final ReentrantLock lock = exceptionTableLock;
      if (lock.tryLock()) {
         try {
            expungeStaleExceptions();
         } finally {
            lock.unlock();
         }
View Full Code Here

    * If lock is available, poll stale refs and remove them.
    * Called from ForkJoinPool when pools become quiescent.
    */
   static final void helpExpungeStaleExceptions() {
      final ReentrantLock lock = exceptionTableLock;
      if (lock.tryLock()) {
         try {
            expungeStaleExceptions();
         } finally {
            lock.unlock();
         }
View Full Code Here

   * @return whether the monitor was entered
   */
  public boolean enter(long time, TimeUnit unit) {
    long timeoutNanos = unit.toNanos(time);
    final ReentrantLock lock = this.lock;
    if (!fair && lock.tryLock()) {
      return true;
    }
    long deadline = System.nanoTime() + timeoutNanos;
    boolean interrupted = Thread.interrupted();
    try {
View Full Code Here

    long deadline = System.nanoTime() + timeoutNanos;
    boolean interrupted = Thread.interrupted();
    try {
      while (true) {
        try {
          return lock.tryLock(timeoutNanos, TimeUnit.NANOSECONDS);
        } catch (InterruptedException interrupt) {
          interrupted = true;
          timeoutNanos = deadline - System.nanoTime();
        }
      }
View Full Code Here

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.