CEvent默认的是人工重置.在它的构造函数中有设置重置的.
至于多个县城操作同一个CEvent对象,可以用CRITICAL_SECTION来保证不发生混乱.
//In header file
class CSample
{
....
static CRITICAL_SECTION m_sec;
}//In Cpp
CRITICAL_SECTION CSample::m_sec;//Before User CEvent
EnterCricicalSection(&CSample::m_sec)
//Use CEvent
LeaveCriticalSection(&CSample::m_sec)
至于多个县城操作同一个CEvent对象,可以用CRITICAL_SECTION来保证不发生混乱.
//In header file
class CSample
{
....
static CRITICAL_SECTION m_sec;
}//In Cpp
CRITICAL_SECTION CSample::m_sec;//Before User CEvent
EnterCricicalSection(&CSample::m_sec)
//Use CEvent
LeaveCriticalSection(&CSample::m_sec)
解决方案 »
- 这样的界面 要怎么实现。只提思路+工具即可
- 【急】帮我做下MFC
- 关于DDX_Control的问题,请各位慈哥善姐帮忙解答,谢谢!
- 如何得到MCIWnd类的进度条的大小
- VC+Dao编写的程序为什么在我的机器上能运行,在其它的机器不能运行
- 有没有朋友提供关于SOCKS的资料
- 谁知道“打印控制中心”应该如何来实现啊????还有不同文档的打印拼图怎么做哦???谢谢大家
- 哪里有地方买<<inside ole2>>这本书(中文版)
- 急 在线等待:怎样才能找到有效的途径安装MSDN?
- 为什么会这样
- 如何在vc中调用远程的vb编写的dll组件?如果使用dcom,那莫组件是否需要在服务器和客户机上都注册?
- 又一个有关全局钩子的问题,请大家帮帮忙(目前系统只让我给这么多分,抱歉)
我觉得是不是CEvent不用保护的,要不怎么可以用它进行线程通讯呢?看了一些书中也没有保护,你能确定你的看法吗?
CCriticalSection封装临界区,用于同步很多线程对一个共享资源的访问.
二者的功能是不同的.在通常情况下,程序进行设计时就要注意,有权利对
CEvent进行SET/RESET操作的只有一个线程,这样就不必出现CEvent需要进行
另外的保护的尴尬了.这主要是老兄使用CEVENT的方法不太正确,老兄再试试。
小弟愚见,只供参考.