当我调用WaitForSingleObject获得互斥量后,退出时再调用ReleaseMutex,返回FALSE,我已经不止一次遇到了,换成信号量实现相同的功能也会在ResetEvent上返回FALSE,后来我换成CriticalSection才把问题解决,清高手指点这是什么原因。
解决方案 »
- MFC基于对话框的打印
- 题目:设计在屏幕上显示时间的程序
- 求教,以太网帧长度小于64时如何补齐?
- 如何delete服务器段用来Accept(SOCK)里面的SOCK?
- 初学VC,看好了来两本书,请各位帮看看选那一本?或则再推荐几本好书!!!!
- 高分求助:在多线程使用ActiveX控件?
- 如何将合成的位图作为对话框背景
- 在开发ActiveX控件时要用到自己定义的类,请问那些类要在IDL中定义吗,如果要,请问怎么定义?
- 两个HOOK问题和一个键盘问题
- 有关stdafx.h和windows.h两个头文件的问题,各位大侠帮帮忙呀!!!!!!!!
- VC++写网络游戏月薪多少?大家说一下吧~
- 如何获知 CListCtrl 控件当前哪一行被选中?
{
EscapeCommFunction(pCCard->m_hCom, CLRRTS);
::ReleaseMutex(pCCard->m_hSendDataMutex);
}上面是那段代码EscapeCommFunction(pCCard->m_hCom, CLRRTS);是向串口发送指令,不会影响到互斥量操作,关键就是ReleaseMutex返回了FALSE调用GetLassError却提示操作成功,而这段代码也不是每次调用都出现这个问题。
::WaitForSingleObject(pCCard->m_hSendDataMutex, 5000L)试试行吗?