两个线程A,B,不是父子关系,
A中准备好数据后B才读取,我用了一个CEvent对象,在B中wait,A中setevent.
但是B可能有很多个实例,
请问:当A setevent后,若有很多个B的实例都在wait,那这些是不是都会往下执行?
     还有,一个程序中可不可以同时用很多个CEVent对象的?

解决方案 »

  1.   

    一个程序中可以多个cevent对象啊!
    最好讲实例和对象分开,免得干扰
      

  2.   

    HANDEL hEvent[你的对象数据数目]
    over!
      

  3.   

    不应该让多个线程同时访问数据,即使是同时读也不应该,也可能出错。可以用临界区限制多个线程对数据的访问。
    1 定义并初始化临界区
    CRITICAL_SECTION  cs;
    InitializeCriticalSection(&cs);2 用临界区限制对数据的访问
    EnterCriticalSection(&cs);
    //访问数据的代码
    LeaveCriticalSection(&cs);3 使用完后清除临界区
    DeleteCriticalSection(&cs);