本教程操作环境:windows7系统、java10版,DELL G3电脑。
1、说明
两个线程都使用lockInterruptibly获取锁,如果线程A获取到了锁,线程B只能等待,对线程B调用interrupt()方法能够中断线程B的等待过程。
2、使用注意
由于lockInterruptibly()的声明中抛出了异常,所以lock.lockInterruptibly()必须放在try块中或者在调用lockInterruptibly()的方法外声明抛出InterruptedException。
3、实例
public void method() throws InterruptedException { lock.lockInterruptibly(); try { //..... } finally { lock.unlock(); } }
当通过lockInterruptibly()方法获取某个锁时,如果不能获取到,只有进行等待的情况下,是可以响应中断的。
以上就是java中lockInterruptibly的使用,当大家想要两个线程中有一个先执行时,可以选择lockInterruptibly来让线程获取锁,学会后赶快试试相关的代码吧。