假设我们有下一个示例代码:
while(some condition){
lock1.lock();
.
.
}
问题是:
假设对于在此代码部分上运行的某个线程正在退出 while 循环的条件并且 lock1 可用,那么线程是否有可能检查循环的条件但仍然不会获得锁?
还是在这种情况下保证如果检查条件,线程将获得锁?
假设我们有下一个示例代码:
while(some condition){
lock1.lock();
.
.
}
问题是:
假设对于在此代码部分上运行的某个线程正在退出 while 循环的条件并且 lock1 可用,那么线程是否有可能检查循环的条件但仍然不会获得锁?
还是在这种情况下保证如果检查条件,线程将获得锁?