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)
解决方案 »
- VC?还是no VC?
- 简单问题,高手帮忙看一下
- MFC初学者的问题
- 关于按钮类CBuuonST的示例问题,谢谢!
- 请告知如何获得鼠标当前在屏幕上的坐标(point)的函数,高分,速结.
- 再麻烦各位 MSFLEXGRID 高手!!!!!送分!!!!!!!!!!
- VC的迷茫
- 操作系统:内存管理
- -------救命啊,获取ftp文件结束时间不能获取到秒,通过filezilla这个ftp软件就可以获取到,但我写的获取不到,求帮忙
- 静态库和动态库编译问题
- 如何在vc中调用远程的vb编写的dll组件?如果使用dcom,那莫组件是否需要在服务器和客户机上都注册?
- 又一个有关全局钩子的问题,请大家帮帮忙(目前系统只让我给这么多分,抱歉)
我觉得是不是CEvent不用保护的,要不怎么可以用它进行线程通讯呢?看了一些书中也没有保护,你能确定你的看法吗?
CCriticalSection封装临界区,用于同步很多线程对一个共享资源的访问.
二者的功能是不同的.在通常情况下,程序进行设计时就要注意,有权利对
CEvent进行SET/RESET操作的只有一个线程,这样就不必出现CEvent需要进行
另外的保护的尴尬了.这主要是老兄使用CEVENT的方法不太正确,老兄再试试。
小弟愚见,只供参考.