HttpWebRequest.Timeout Propriedade

Definição

Obtém ou define o valor de time-out em milissegundos para os GetResponse() métodos e GetRequestStream() .

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

Valor de Propriedade

O número de milissegundos a esperar antes do pedido expirar. O valor padrão é 100.000 milissegundos (100 segundos).

Exceções

O valor especificado é menor que zero e não Infiniteé .

Exemplos

O seguinte exemplo de código define a Timeout propriedade do HttpWebRequest objeto.

// Create a new 'HttpWebRequest' Object to the mentioned URL.
HttpWebRequest myHttpWebRequest=(HttpWebRequest)WebRequest.Create("http://www.contoso.com");
Console.WriteLine("\nThe timeout time of the request before setting the property is  {0}  milliSeconds.",myHttpWebRequest.Timeout);
// Set the  'Timeout' property of the HttpWebRequest to 10 milliseconds.
myHttpWebRequest.Timeout=10;
// Display the 'Timeout' property of the 'HttpWebRequest' on the console.
Console.WriteLine("\nThe timeout time of the request after setting the timeout is {0}  milliSeconds.",myHttpWebRequest.Timeout);
// A HttpWebResponse object is created and is GetResponse Property of the HttpWebRequest associated with it
HttpWebResponse myHttpWebResponse=(HttpWebResponse)myHttpWebRequest.GetResponse();
' Create a new 'HttpWebRequest' Object to the mentioned URL.
     Dim myHttpWebRequest As HttpWebRequest = CType(WebRequest.Create("http://www.contoso.com"), HttpWebRequest)
     Console.WriteLine(ControlChars.Cr + "The timeout time of the request before setting the property is  {0}  milliSeconds", myHttpWebRequest.Timeout)
    ' Set the  'Timeout' property of the HttpWebRequest to 10 milliseconds.
 myHttpWebRequest.Timeout = 10	
     ' Display the 'Timeout' property of the 'HttpWebRequest' on the console.
     Console.WriteLine(ControlChars.Cr + "The timeout time of the request after setting the timeout is {0}  milliSeconds", myHttpWebRequest.Timeout)
     ' A HttpWebResponse object is created and is GetResponse Property of the HttpWebRequest associated with it 
     Dim myHttpWebResponse As HttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse)

Observações

Atenção

WebRequest, HttpWebRequest, ServicePoint, e WebClient são obsoletos, e não deves usá-los para novos desenvolvimentos. Utilize HttpClient em substituição.

Timeout é o número de milissegundos em que um pedido síncrono subsequente feito com o GetResponse método espera uma resposta, e o GetRequestStream método espera por um fluxo. Aplica-se Timeout a todo o pedido e resposta, não individualmente às GetRequestStream chamadas ao método and GetResponse . Se o recurso não for devolvido dentro do período de time-out, o pedido lança a WebException com a Status propriedade definida em WebExceptionStatus.Timeout.

A Timeout propriedade deve ser definida antes de o GetRequestStream método ou GetResponse ser chamado. Alterar a Timeout propriedade após chamar o GetRequestStream método ou GetResponse não tem efeito

A Timeout propriedade não tem efeito sobre pedidos assíncronos feitos com o BeginGetResponse método ou.BeginGetRequestStream

Atenção

No caso de pedidos assíncronos, a aplicação cliente implementa o seu próprio mecanismo de time-out. Consulte o exemplo no BeginGetResponse método.

Para especificar o tempo a esperar antes de uma operação de leitura ou escrita expirar, use a ReadWriteTimeout propriedade.

Uma consulta ao Sistema de Nomes de Domínio (DNS) pode demorar até 15 segundos a ser devolvida ou a expirar. Se o seu pedido contiver um nome de host que requer resolução e definir Timeout para um valor inferior a 15 segundos, pode demorar 15 segundos ou mais até que a WebException seja lançado para indicar um timeout no seu pedido.

Aplica-se a

Ver também