好像没这么简单!
你是否将每一行代码都加上synchronize呢?

解决方案 »

  1.   

    线程驱动是在KERNEL MODE实现的.也就是说用户线程不能阻止切换线程.
    所以如果不自己加LOCK.就不能阻止主线程获得信息.
    见MSDN的线程同步章节.包括挂起主线程.
      

  2.   

    To wyj:
        这好象不是使用多线程的目的? 如果非要这样, 很有可能连你的弹出窗口也响应不了任何消息, 除非弹出窗口有自己的消息循环.
      

  3.   

    我想不能处理任何消息并不是你的本意吧?起码重画消息应该处理吧!:-)
    此处你不想处理的消息我猜想应该是来自用户的输入,有一个办法,就是在线程要
    弹出窗口时,把主窗口上的各种可能接收输入的窗口给Disable掉.这样就可以起到
    你要的效果了.
    我也碰到过你这样的问题,可能需求不一样,我是在线程中弹出错误信息,此时主线程
    不能再有任何操作,唯有DISABLE了.
    不知猜测你的用意是否正确,见笑了.