zoukankan      html  css  js  c++  java
  • 重入锁

    返回主页面

    重入锁ReentradeLock

    情景:当一个线程调用Mutex的lock()方法获取锁之后,如果再次调用lock()方法,则线程会被自己锁阻塞,原因是Mutex在实现tryAcquire(int acquires)方法时没有考虑占有锁的线程再次获取锁的场景,而在调用tryAcquire(int acquires)方法时,返回了false,导致该线程被阻塞。

    简单地说,Mutex是一个不支持重进人的锁。而synchronized关键字隐式的支持重进入,比如一个synchronized修饰的递归方法,在方法执行时,执行线程在获取了锁之后仍能连续多次地获得该锁,而不像Mutex 由于获取锁,而在下一次获取锁时出现阻塞自己的情况。

    一个锁获取的公平性问题,如果在绝对时间上,先对锁进行获取的请求一个先被满足,那么这个锁是公平的,反之是不公平的。

  • 相关阅读:
    系统测试的策略
    POJ1611(并查集)
    POJ2752(KMP)
    POJ3176(DP)
    HDU2579(BFS)
    HDOJ1175(BFS)
    HDOJ1242(BFS)
    HDOJ1180(BFS)
    HDOJ1372(BFS)
    HDOJ2717(BFS)
  • 原文地址:https://www.cnblogs.com/tianzhiyun/p/9581163.html
Copyright © 2011-2022 走看看