public class TestConcurrent{
public static void main(String args[]){
Lock lock = new ReentrantLock();
boolean b1 = lock.tryLock();
System.out.println(b1); //prints true
boolean b2 = lock.tryLock();
System.out.println(b2); //prints true again
}
}
最初にロックしようとすると、オブジェクトが正常にロックされます。2 回目の試行については、オブジェクトがまだロック解除されていないため、2 回目のロック試行は false を返すと思います。しかし、それは再びtrueを返します!!
これに対する説明はありますか?