2011-05-03 8 views
0

웹 사이트가 1 초 후에 응답하지 않으면 나쁜 링크라고 가정하는 것이 안전하고 계속해야한다고 생각하는 것이 안전합니다. 가능한 링크 집합 내 다음 링크로 이동하십시오.C# : 웹 페이지가 응답하지 않을 때 System.Net.WebClient 다운로드를 종료합니다.

미리 결정된 시간이 지난 후에 WebClient에 다운로드를 중단하도록 알려줄 수 있습니까?

나는 스레드를 사용할 수 있다고 생각하지만, 다운로드하는 데 1 초 이상 걸리면 괜찮습니다. 사이트와 연결되어 있는지 확인하기 만하면됩니다.

아마도 WebClient 헤더를 수정해야하지만 수정할 필요가 없습니다.

아마도 System.Net 네임 스페이스에서 다른 클래스를 사용해야합니까?

답변

2

System.Net.WebRequest 클래스를 사용하는 경우 Timeout 속성을 짧게 설정하고 시간 제한 예외를 처리 할 수 ​​있습니다.

try{ 
    var request = WebRequest.Create("http://www.contoso.com"); 
    request.Timeout = 5000; //set the timeout to 5 seconds 
    request.Method = "GET"; 
    var response = request.GetResponse(); 
} 
catch(WebException webEx){ 
    //there was an error, likely a timeout, try another link here 
} 
+0

당신은 WebException을 의미합니까? – user420667

+0

예, 업데이트 됨 ... – brendan

관련 문제