Поделиться через


NetworkStream.ReadTimeout Свойство

Определение

Возвращает или задает время, в течение которого операция чтения блокирует ожидание данных.

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

Значение свойства

Объект Int32, указывающий период времени (в миллисекундах), по истечении которого происходит сбой операции чтения. По умолчанию установлен флаг Infinite, указывающий, что время операции чтения не ограничено.

Исключения

Указанное значение меньше или равно нулю, и флаг Infinite не установлен.

Примеры

В следующем примере кода время ожидания чтения для сетевого потока устанавливается в 10 миллисекундах.

// Create a client that will connect to a
// server listening on the contosoServer computer
// at port 11000.
TcpClient tcpClient = new TcpClient();
tcpClient.Connect("contosoServer", 11000);
// Get the stream used to read the message sent by the server.
NetworkStream networkStream = tcpClient.GetStream();
// Set a 10 millisecond timeout for reading.
networkStream.ReadTimeout = 10;
// Read the server message into a byte buffer.
byte[] bytes = new byte[1024];
networkStream.Read(bytes, 0, 1024);
//Convert the server's message into a string and display it.
string data = Encoding.UTF8.GetString(bytes);
Console.WriteLine("Server sent message: {0}", data);
networkStream.Close();
tcpClient.Close();

Комментарии

Если операция чтения не завершается в течение времени, указанного этим свойством, операция чтения создает исключение IOException.

Примечание

Это свойство влияет только на синхронные операции чтения, выполняемые Read путем вызова метода . Это свойство не влияет на асинхронные операции чтения, выполняемые BeginRead путем вызова метода или ReadAsync .

Применяется к