mirror of
https://github.com/Blinue/Magpie.git
synced 2026-06-24 02:04:10 +00:00
修复LeaveCriticalSection异常
使用InitializeCriticalSectionEx进行初始化,设置SpinCount使线程不至于立刻被置于等待状态而耗费大量的CPU周期,同时析构函数中释放CS
This commit is contained in:
parent
ce03122532
commit
711b977a5e
1 changed files with 3 additions and 1 deletions
|
|
@ -144,7 +144,7 @@ bool GraphicsCaptureFrameSource::Initialize() {
|
|||
}
|
||||
|
||||
InitializeConditionVariable(&_cv);
|
||||
InitializeCriticalSection(&_cs);
|
||||
InitializeCriticalSectionEx(&_cs, 4000, CRITICAL_SECTION_NO_DEBUG_INFO);
|
||||
|
||||
App::GetInstance().SetErrorMsg(ErrorMessages::GENERIC);
|
||||
SPDLOG_LOGGER_INFO(logger, "GraphicsCaptureFrameSource 初始化完成");
|
||||
|
|
@ -372,4 +372,6 @@ GraphicsCaptureFrameSource::~GraphicsCaptureFrameSource() {
|
|||
if (_srcWndStyle) {
|
||||
SetWindowLongPtr(App::GetInstance().GetHwndSrc(), GWL_EXSTYLE, _srcWndStyle);
|
||||
}
|
||||
|
||||
DeleteCriticalSection(&_cs);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue