Package java.util.concurrent.locks

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


   * @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

    if (guard.monitor != this) {
      throw new IllegalMonitorStateException();
    }
    final ReentrantLock lock = this.lock;
    boolean reentrant = lock.isHeldByCurrentThread();
    if (fair || !lock.tryLock()) {
      long deadline = System.nanoTime() + timeoutNanos;
      if (!lock.tryLock(time, unit)) {
        return false;
      }
      timeoutNanos = deadline - System.nanoTime();
View Full Code Here

    }
    final ReentrantLock lock = this.lock;
    boolean reentrant = lock.isHeldByCurrentThread();
    if (fair || !lock.tryLock()) {
      long deadline = System.nanoTime() + timeoutNanos;
      if (!lock.tryLock(time, unit)) {
        return false;
      }
      timeoutNanos = deadline - System.nanoTime();
    }
View Full Code Here

    final ReentrantLock lock = this.lock;
    long deadline = System.nanoTime() + timeoutNanos;
    boolean signalBeforeWaiting = lock.isHeldByCurrentThread();
    boolean interrupted = Thread.interrupted();
    try {
      if (fair || !lock.tryLock()) {
        boolean locked = false;
        do {
          try {
            locked = lock.tryLock(timeoutNanos, TimeUnit.NANOSECONDS);
            if (!locked) {
View Full Code Here

    try {
      if (fair || !lock.tryLock()) {
        boolean locked = false;
        do {
          try {
            locked = lock.tryLock(timeoutNanos, TimeUnit.NANOSECONDS);
            if (!locked) {
              return false;
            }
          } catch (InterruptedException interrupt) {
            interrupted = true;
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 = false;
    try {
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 = false;
    try {
View Full Code Here

        dispatcher.registerHandler(socketTwo, new ZDispatcher.ZMessageHandler() {

            @Override
            public void handleMessage(ZDispatcher.ZSender sender, ZMsg msg) {
                try {
                    if (guardLock2.tryLock()) {
                        handlersBarrier.await(1, TimeUnit.SECONDS);
                    } else {
                        threadingIssueDetected.set(true);
                    }
                } catch (Exception ex) {
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

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.