【发布时间】:2011-08-31 16:41:34
【问题描述】:
例如,这是否有效?
CRITICAL_SECTION cs;
::InitializeCriticalSection( &cs );
::EnterCriticalSection( &cs ); // First level
::EnterCriticalSection( &cs ); // Second level
/* do some stuff */
::LeaveCriticalSection( &cs ); // Second level
::LeaveCriticalSection( &cs ); // First level
::DeleteCriticalSection( &cs );
显然,我绝不会故意这样做,但如果这是由于函数调用导致调用“第一级”以锁定对象以用于复杂(例如搜索)算法和“第二级”在该对象的访问器函数中被调用?
【问题讨论】:
标签: c++ winapi critical-section