轮询和超时

时间:2010-11-11 11:18:11

标签: c# .net

我正在查询特定返回值的Web服务。 (自Web服务立即返回后使用同步调用)。如何实现这种轮询的超时,比如10分钟,我会停止轮询?

2 个答案:

答案 0 :(得分:1)

我能想到的最简单的例子就是......

var service = new MyService();
var result = false;
var start = DateTime.Now;

while (!result && DateTime.Now < start.AddMinutes(10)) {
    result = service.Execute();
}
if (result){
    // Call successful
} else {
    // Routine timeout
}

但是获得更多信息会有所帮助。然后,您可能希望在另一个线程中放置一个类似的例程,以防止您的应用程序被锁定。

答案 1 :(得分:0)

如果没有更多详细信息,我只能为您提供以下内容

HttpWebRequest.Timeout Property

WebRequest.Timeout Property