只是想对此有所了解。想象一下,我使用 EnterCriticalSection 的 windows api。我打电话给他们所有人EnterCriticalSection(&criticalsection);
这是多线程的线程函数
void thread (){
//enter critical section (part 1)
data
//leave critical section
///more data 1
//entercritical section (part 2)
//more data 2
//leave critical section
}
一旦一个线程进入临界区(第 1 部分),其他线程就无法进入该部分,无论更多数据 1 是否实际上有任何共享数据,对吗?同样在此期间,其他线程也无法进入关键部分的第 2 部分。