假如主线程 某一个按钮 点击的 响应要操作与另一个线程共享的 变量。
在这个点击响应里先lock 之后,假如另一个线程的变量正在 “使用”状态,并且内部又调用了SendMessage试图更新界面的某些东西,这样就会造成SendMessage阻塞和Lock Mutex的死锁阻塞。
具体是什么意思呢;
void OnBtnClick()
{
lock()
DoSomethine()
unlock()
}
void DoSomethine()
{
::SendMessage(hwnd,WM_LOG,0,L"Hello");
}