我有一个 .net 网络服务。它有一个方法可以执行需要 60 秒的任务,然后将字符串结果返回给客户端。
在某些网络特别是低带宽中,我在 40 秒内收到超时错误,然后 web 服务方法在 60 秒内完成任务。
现在我想实现 web 服务异步调用来支持低带宽网络。
在异步 Web 服务调用中,一种方法是使用运行 Web 服务方法并将 Web 服务结果返回到主线程的线程,如下图所示。
但是这种方法无法解决我的问题,因为该线程使用一个连接。
我需要另一种方法。我的客户端调用 webservice 方法和方法中的一个线程开始其操作,当任务完成时,1)webservice 发送一条消息,表明您的响应已准备好,或者,2)客户端检查 webservice 响应是否已准备好(我认为轮询机制),例如下图。
如何在.net 中实现第二种方法?是否可以?
谢谢。