WebRequest.Timeout プロパティ

定義

要求がタイムアウトするまでの時間の長さをミリ秒単位で取得または設定します。

public:
 virtual property int Timeout { int get(); void set(int value); };
public virtual int Timeout { get; set; }
member this.Timeout : int with get, set
Public Overridable Property Timeout As Integer

プロパティ値

要求がタイムアウトするまでの時間 (ミリ秒単位)、または要求がタイムアウトしないことを示す値 Infinite。既定値は、子孫クラスによって定義されます。

例外

子孫クラスでプロパティがオーバーライドされていない場合は、プロパティの取得または設定が試行されます。

次の例では、Timeout プロパティを 1,0000 ミリ秒に設定します。 リソースを返す前にタイムアウト期間が経過すると、WebException がスローされます。

// Create a new WebRequest Object to the mentioned URL.
WebRequest^ myWebRequest = WebRequest::Create( "http://www.contoso.com" );
Console::WriteLine( "\nThe Timeout time of the request before setting is : {0} milliseconds", myWebRequest->Timeout );

// Set the 'Timeout' property in Milliseconds.
myWebRequest->Timeout = 10000;

// This request will throw a WebException if it reaches the timeout limit
// before it is able to fetch the resource.
WebResponse^ myWebResponse = myWebRequest->GetResponse();

         // Create a new WebRequest Object to the mentioned URL.
WebRequest myWebRequest=WebRequest.Create("http://www.contoso.com");
Console.WriteLine("\nThe Timeout time of the request before setting is : {0} milliseconds",myWebRequest.Timeout);

// Set the 'Timeout' property in Milliseconds.
myWebRequest.Timeout=10000;

// This request will throw a WebException if it reaches the timeout limit before it is able to fetch the resource.
         WebResponse myWebResponse=myWebRequest.GetResponse();

   ' Create a new WebRequest Object to the mentioned URL.
   Dim myWebRequest As WebRequest = WebRequest.Create("http://www.contoso.com")
   Console.WriteLine(ControlChars.Cr + "The Timeout time of the request before setting is : {0} milliseconds", myWebRequest.Timeout)

   ' Set the 'Timeout' property in Milliseconds.
myWebRequest.Timeout = 10000

  ' Assign the response object of 'WebRequest' to a 'WebResponse' variable.
   Dim myWebResponse As WebResponse = myWebRequest.GetResponse()

注釈

注意

WebRequestHttpWebRequestServicePointWebClient は廃止されており、新しい開発には使用しないでください。 代わりに HttpClient を使用してください。

Timeout プロパティは、要求がタイムアウトし、WebExceptionがスローされるまでの時間の長さをミリ秒単位で示します。 Timeout プロパティは、GetResponse メソッドで行われた同期要求にのみ影響します。 非同期要求をタイムアウトにするには、Abort メソッドを使用します。

手記

WebRequest クラスは、abstract クラスです。 実行時の WebRequest インスタンスの実際の動作は、WebRequest.Create メソッドによって返される子孫クラスによって決まります。 既定値と例外の詳細については、HttpWebRequestFileWebRequestなどの子孫クラスのドキュメントを参照してください。

注意 (継承者)

子孫クラスは、Status フィールドが Timeoutに設定された WebException をスローすることによってタイムアウトを通知します。 TimeoutInfinite に設定されている場合、子孫クラスはタイムアウトしません。

適用対象

こちらもご覧ください