DWORD result=WaitForMultipleObjects(2,hThrds,true,INFINITE);
这一句和下面两句得效果一样么
WORD result=WaitForSingleObject(pThread->m_hThread,INFINITE);
result=WaitForSingleObject(pThread1->m_hThread,INFINITE);
?根据我得观测,这两种等法似乎对于98,ME,XP效果一样,但是对于2K效果不一样,搞不动为什么,高手指点!!!

解决方案 »

  1.   

    应该不一样吧,第一个WaitForSingleObject会影响第2个的运行
      

  2.   

    98,ME,XP与2000的系统内核还是有差别的。2k应该是基于nt内核的吧。一些函数执行的结果就会不一样。
      

  3.   

    最直接的方法,查看msdn.刚刚去看了看,这几个函数在各个os是有点儿细微的差别.
      

  4.   

    呵呵,看了一下msdn,还是没看出什么名堂来?
    :-)
      

  5.   

    WaitForMultipleObjects(2,hThrds,TRUE,INFINITE);
    如果第三参数是TRUE,两者效果差不多,如果第三参数是FALSE差别就大了。
      

  6.   

    有差别,第一种是ok的。
    第二种,有可能会一直wait在第二的wait上,即使有setevent()
      

  7.   

    如果hThrds里面是pThread->m_hThread跟pThread1->m_hThread,执行起来应该没什么分别,第一种可能更有效率一点,也是值得推荐的一种方式,