还有是做短消息发送的程序吗? 用的哪个API?

解决方案 »

  1.   

    proc1发现消息队列中有消息时,提交给服务器,服务器处理完毕,返回状态,写入第二个消息队列,proc2发现第二个消息队列中有消息时,做数据库的insert操作
      

  2.   

    startFlag的状态??你是说startFlag已经不存在或是为false乐??
      

  3.   

    1。出现异常跳出while,你可以用vs的线程观察工具检查一下。2。sleep(100)太长了,这意味着你一秒钟最多只能够作3×10个处理,非常少,说不定是你的处理能力不够,造成的数据信息积累。
      

  4.   

    现在我给proc1、proc2和proc3加了lock语句,不知道行不行:while(startFlag)
    {
      lock(this)
      {   
          if(队列中有消息)
          {
             ...
           }
       }
       Thread.Sleep(100);
    }
      

  5.   

    用Mutex来锁定要执行的对象。
      

  6.   

    对,就是用Mutex对象来锁定,但是还是要认真检查代码,防止死锁。