WebClient.DownloadFile()을 사용하여 시간 초과 관리
WebClient.DownloadFile()
방법을 사용하면 다운로드 대기 시간이 길어질 수 있습니다. 이를 방지하려면 시간 초과 메커니즘을 구현하는 것이 중요합니다. 이렇게 하면 다운로드가 무기한 중단되는 일이 발생하지 않습니다.
해결책에는 시간 초과 속성을 관리하기 위해 WebRequest
를 확장하는 사용자 정의 클래스를 만드는 것이 포함됩니다. 방법은 다음과 같습니다.
<code class="language-csharp">using System; using System.Net; public class WebDownload : WebClient { /// <summary> /// Timeout in milliseconds /// </summary> public int Timeout { get; set; } public WebDownload() : this(60000) { } public WebDownload(int timeout) { this.Timeout = timeout; } protected override WebRequest GetWebRequest(Uri address) { WebRequest request = base.GetWebRequest(address); if (request != null) { request.Timeout = this.Timeout; } return request; } }</code>
WebDownload
클래스는 표준 WebClient
과 유사하게 작동하지만 구성 가능한 Timeout
속성을 추가합니다.
이 접근 방식은 WebClient.DownloadFile()
을 사용하여 다운로드 시간 초과를 제어하여 과도한 지연을 방지합니다.
위 내용은 WebClient.DownloadFile()에 대한 시간 초과를 어떻게 설정할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!