【发布时间】:2013-07-03 07:36:48
【问题描述】:
可能是我理解错了,但是……
当我调用 pthread_mutex_lock(),然后在 同一 线程中再次调用 pthread_mutex_lock() 而不调用 pthread_mutex_unlock() 时,第二次调用 pthread_mutex_lock() 将阻塞。
但是:当我调用 EnterCriticalSection() 并再次从 same 线程中调用 EnterCriticalSection() 而不调用 LeaveCriticalSection() 时,第二次调用 EnterCriticalSection() 将不会阻塞,因为它被调用了同一个线程(对我来说这是一个非常奇怪的行为)。
所以我的问题是有一个可用的 WinAPI 函数,其行为类似于 pthread_mutex_lock() 并且锁定独立于线程上下文?
我知道适用于 Windows 的 libpthread,但我更喜欢这里有一个 WinAPI 函数。
【问题讨论】: