解决方案 »

  1.   

    加上 一个 boolean变量试试,每次操作时判断一下,只是思路,不知道能行么?
      

  2.   

    ReentrantLock 是重入所, lock 后其他的线程 还是会进入,一般配合condition, 重入所一般为了提高效率,是其他的线程不会呆呆的block,而是 有更多的选择余地。你要做成纯粹的窜行执行,为什不用 synchronized一般 ReentrantLock 配合 condition下面是配合 condition,模仿synchronized窜行执行的效果。 这样没什么意义package jp.co.nec.aim.demo.servlet;import java.util.concurrent.locks.Condition;
    import java.util.concurrent.locks.ReentrantLock;public class Entrance { private static final ReentrantLock lock = new ReentrantLock(false);
    private static final Condition c = lock.newCondition(); public static void main(String[] args) {
    lock.lock();
    try {
    c.await();
    // do something
    System.out.print(11);
    c.notify();
    } catch (InterruptedException e) {
    } finally {
    lock.unlock();
    }
    }
    }
      

  3.   

    我看了文档说 lock方法就是阻塞的了跟同步关键字一样 
      

  4.   

    我看了文档说 lock方法就是阻塞的了跟同步关键字一样