HttpWebRequest.Timeout Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
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.