java ReentrantLock小坑

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java ReentrantLock小坑相关的知识,希望对你有一定的参考价值。

ReentrantLock有个lockInterruptibly方法,该方法可被中断并抛异常,一般如果在finally里写unlock的话,在unlock时要加上判断isHeldByCurrentThread(),因为很可能unlock的线程不是lock的线程,会抛异常,进一步因为lockInterruptibly被中断时该线程并没有获得锁,然而finally里的unlock会执行,这时那个线程没有锁却要释放,会抛异常

以上是关于java ReentrantLock小坑的主要内容,如果未能解决你的问题,请参考以下文章

ReentrantLock使用Condition实现线程的等待和唤醒

Java小坑

小坑java下载excel文件

Java Review - 线程池使用FutureTask的小坑

Java Review - 线程池使用FutureTask的小坑

RSA 踩过的一个小坑。