NetworkStream.WriteTimeout Eigenschaft

Definition

Dient zum Abrufen oder Festlegen der Zeitspanne, die ein Schreibvorgang blockiert, der auf Daten wartet.

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

Eigenschaftswert

Ein Int32 Wert, der die Zeitspanne in Millisekunden angibt, die vor einem Schreibvorgang fehlschlägt. Der Standardwert , gibt an, Infinitedass der Schreibvorgang nicht timeout.

Ausnahmen

Der angegebene Wert ist kleiner oder gleich Null und nicht Infinite.

Beispiele

Im folgenden Codebeispiel wird das Timeout für einen Netzwerkdatenstrom auf 10 Millisekunden festgelegt.

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();
        }
    }
}

Hinweise

Wenn der Schreibvorgang nicht innerhalb der von dieser Eigenschaft angegebenen Zeit abgeschlossen wird, löst der Schreibvorgang einen IOException.

Note

Diese Eigenschaft wirkt sich nur auf synchrone Schreibvorgänge aus, die durch Aufrufen der Write Methode ausgeführt werden. Diese Eigenschaft wirkt sich nicht auf asynchrone Schreibvorgänge aus, die durch Aufrufen der BeginWrite Methode ausgeführt WriteAsync werden.

Gilt für: