我尝试用多线程,但是我需要知道计算结果,所以我就调用WaitForSingleObject结果界面有 没有响应了,求解一些好的处理方法!

解决方案 »

  1.   

    再function里加入GetMessage(&msg,NULL,0,0);
    TranslateMessage(&msg);
    DispatchMessage(&msg);语句,最好加在某个循环与句里
      

  2.   

    啊呀。没看清楼主的问题啊调用WaitForSingleObject会阻塞当前线程,放到新的线程中执行吧,WaitForSingleObject返回后,用SendMessage发送一个自定义消息到GUI的窗体通知一下就可以了
      

  3.   

    你调用线程后就开启一个进度条.并把进度条的对象传给线程,
    然后把在把处理结果显示在进度条上就可以了.或者用一个timer每次增加一个.进度条满了再从0开始.
      

  4.   

    把计算放到一个worker thread中,WaitForSingleObject不能放到主线程中,否则会阻塞整个进程的
      

  5.   

    把计算放到一个worker thread ,完后向主线程发送消息