NetworkStream.WriteTimeout Свойство

Определение

Возвращает или задает время ожидания данных блоками операций записи.

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

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

Значение Int32 , указывающее время в миллисекундах, которое завершится до сбоя операции записи. Значение Infiniteпо умолчанию указывает, что операция записи не истекает.

Исключения

Указанное значение меньше нуля или равно Infiniteнулю.

Примеры

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

using System;
using System.Text;
using System.Net;
using System.Net.Sockets;

namespace Examples.System.Net
{
    public class TCPListenerExample
    {
        public static void Main()
        {
            // Create the server side connection and
            // start listening for clients.
            TcpListener tcpListener = new TcpListener(IPAddress.Any,11000);
            tcpListener.Start();
            Console.WriteLine("Waiting for a connection....");

            // Accept the pending client connection.
            using TcpClient tcpClient = tcpListener.AcceptTcpClient();
            Console.WriteLine("Connection accepted.");
            // Get the stream to write the message
            // that will be sent to the client.
            using NetworkStream networkStream = tcpClient.GetStream();
            string responseString = "Hello.";
            // Set the write timeout to 10 millseconds.
            networkStream.WriteTimeout = 10;
            // Convert the message to a byte array and sent it to the client.
            Byte[] sendBytes = Encoding.UTF8.GetBytes(responseString);
            networkStream.Write(sendBytes, 0, sendBytes.Length);
            Console.WriteLine("Message Sent.");
            // Close the connection to the client.
            tcpClient.Close();
            // Stop listening for incoming connections
            // and close the server.
            tcpListener.Stop();
        }
    }
}

Комментарии

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

Note

Это свойство влияет только на синхронные операции записи, выполняемые путем вызова Write метода. Это свойство не влияет на асинхронные записи, выполняемые вызовом или BeginWrite методомWriteAsync.

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