使用CRITICAL_SECTION来实现线程时, 保证每一个EnterCriticalSection都有对应的LeaveCriticalSection的情况下, 线程A的代码:
EnterCriticalSection(&dt_cs);
if (...)
{
..
LeaveCriticalSection(&dt_cs);
return false;
}
else
{
LeaveCriticalSection(&dt_cs);
Sleep(1);
return true;
} 上面Sleep时间的太短竟然会引起整个程序的挂起. 改为Sleep(100)又正常了.不知道有没有人遇到过这问题.