应该是使用 Message Queue 来完成。
但具体的我没有什么研究。

解决方案 »

  1.   

    可以通过使用.NET的Remoting+.NET Event来实现
    在客户端程序中为服务器端远程对象的事件添加处理程序,当服务器端执行完超长操作时,触发这个事件,这是能够通知客户端
    只是在.NET Remoting中使用事件时需要注意以下两点:任何为回调函数传递到服务器的委托必须是实例成员的委托,原因是不能远程调用静态成员。 
    必须注册侦听该回调函数的信道,即使将该信道端口注册为“0”(零)以使系统能够为您选择端口。 
    (参见.NET Framework SDK 文档中的远程处理部分)
      

  2.   

    可以通过多线程的异步通信.然后利用Remoting来实现
      

  3.   

    队列组件MSMQ可以达到异步处理
      

  4.   

    原来这么多人回复,很多不来了。
    多谢大家了。
    我与另外一位朋友刚刚试过用web service,发现不过怎么调用,web service都不能超过3分钟的运行时间。IIS会扼杀掉它。所以下一步准备采用remoting来实现。
    有E文介绍,我看了半天,the guy在Thread.sleep时也不试试3分钟以上的情况就发出来。浪费我太多时间。