WebRequest.Timeout Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define o período de tempo, em milissegundos, antes do tempo limite da solicitação.
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
Valor da propriedade
O período de tempo, em milissegundos, até a solicitação atingir o tempo limite ou o valor Infinite para indicar que a solicitação não atingiu o tempo limite. O valor padrão é definido pela classe descendente.
Exceções
Qualquer tentativa é feita para obter ou definir a propriedade, quando a propriedade não é substituída em uma classe descendente.
Exemplos
O exemplo a seguir define a propriedade Timeout como 10000 milissegundos. Se o período de tempo limite expirar antes que o recurso possa ser retornado, um WebException será gerado.
// 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()
Comentários
Cuidado
WebRequest
, HttpWebRequest
, ServicePoint
e WebClient
estão obsoletos e você não deve usá-los para um novo desenvolvimento. Em vez disso, use HttpClient.
A propriedade Timeout indica o tempo, em milissegundos, até a solicitação atingir o tempo limite e gerar um WebException. A propriedade Timeout afeta apenas solicitações síncronas feitas com o método GetResponse. Para cronometrar solicitações assíncronas, use o método Abort.
Nota
A classe WebRequest é uma classe abstract
. O comportamento real de WebRequest instâncias em tempo de execução é determinado pela classe descendente retornada pelo método WebRequest.Create. Para obter mais informações sobre valores e exceções padrão, consulte a documentação das classes descendentes, como HttpWebRequest e FileWebRequest.
Notas aos Herdeiros
Classes descendentes sinalizam um tempo limite lançando uma WebException com o campo Status definido como Timeout. Quando Timeout é definido como Infinite a classe descendente não faz tempo limite.