2010-11-11 141 views
1

我正在輪詢特定返回值的Web服務。 (由於Web服務立即返回,使用同步調用)。如何實現這種輪詢的超時時間,比如10分鐘,我將停止輪詢?輪詢和超時

+0

你怎麼投票?你能發佈代碼嗎? – Oded 2010-11-11 11:19:23

+0

你介意在調用Web服務之前啓動一個線程嗎? – Koekiebox 2010-11-11 11:21:19

回答

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 
} 

但有更多信息將有所幫助。然後,您可能希望在另一個線程中放置類似的例程,以防止應用程序被鎖定。