实际使用lockInterruptibly for ReentrantLock

Rol*_*all 11 java concurrency locking reentrantlock

你对这种方法实际使用了lockInterruptibly什么?我已阅读API,但对我来说不是很清楚.换句话说,有人可以表达吗?

Evg*_*eev 9

lockInterruptibly()如果锁已经被另一个线程持有并且将等到锁定被获取,则可以阻止.这与常规相同lock().但是如果另一个线程中断,则等待线程 lockInterruptibly()将抛出InterruptedException.


Mar*_*nik 5

逻辑与所有可中断的阻塞方法相同:它允许线程立即对interrupt从另一个线程发送给它的信号做出反应.

如何使用此特定功能取决于应用程序设计.例如,它可以用于杀死池中的所有线程,这些线程都在等待获取锁.