ReentrantLock 的使用场景

  1. 需要使用可重入锁时,即当该线程正在运行时,可以再次进入并执行它

  2. 并发竞争很高的情况下

  3. 需要使用可中断锁

  4. 尝试等待执行:如果发现该操作已在执行,则尝试等待一段时间,等待超时则不执行

  5. 如果发现该操作已在执行中则不再执行(有状态执行),例如:用在定时任务时,如果任务执行时间可能超过下次计划执行时间,确保该有状态任务只有一个正在执行,忽略重复触发

-----------本文结束感谢您的阅读-----------
0%