Locking/Unlocking 功能与 CRITICAL_SECTION
Locking/Unlocking functions with CRITICAL_SECTION
所以,当我使用 "EnterCriticalSection" & "LeaveCriticalSection" 时,我抛出了一个异常,这是我当前的设置:
void printer::Unlock()
{
LeaveCriticalSection(&_cs);
}
void printer::Lock()
{
EnterCriticalSection(&_cs);
}
_cs 是在我的 class "printer" 中创建的 CRITICAL_SECTION 对象,如下所示:
class printer {
private:
static CRITICAL_SECTION _cs;
当我调用 "Lock" 时它抛出异常,我不太确定为什么,我已经尝试阅读 MSDN 但我不是 100% 理解它。
(我不想使用互斥...)
我相信你需要添加
InitializeCriticalSection(&_cs);
如果失败,您可以尝试将 CRITICAL_SECTION _cs 更改为可变的而不是静态的,但那是一种盲目尝试。
所以,当我使用 "EnterCriticalSection" & "LeaveCriticalSection" 时,我抛出了一个异常,这是我当前的设置:
void printer::Unlock()
{
LeaveCriticalSection(&_cs);
}
void printer::Lock()
{
EnterCriticalSection(&_cs);
}
_cs 是在我的 class "printer" 中创建的 CRITICAL_SECTION 对象,如下所示:
class printer {
private:
static CRITICAL_SECTION _cs;
当我调用 "Lock" 时它抛出异常,我不太确定为什么,我已经尝试阅读 MSDN 但我不是 100% 理解它。
(我不想使用互斥...)
我相信你需要添加
InitializeCriticalSection(&_cs);
如果失败,您可以尝试将 CRITICAL_SECTION _cs 更改为可变的而不是静态的,但那是一种盲目尝试。