Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Proprietà NetworkStream.WriteTimeout

 

Data di pubblicazione: ottobre 2016

Ottiene o imposta la quantità di tempo che un'operazione di scrittura si blocca in attesa di dati.

Spazio dei nomi:   System.Net.Sockets
Assembly:  System (in System.dll)

public override int WriteTimeout { get; set; }

Valore proprietà

Type: System.Int32

Oggetto Int32 che specifica la quantità di tempo, espresso in millisecondi, che deve trascorrere prima che un'operazione di scrittura ha esito negativo. Il valore predefinito, Infinite, specifica che l'operazione di scrittura non è scaduta.

Exception Condition
ArgumentOutOfRangeException

Il valore specificato è minore o uguale a zero e non è Infinite.

Se l'operazione di scrittura viene completata entro il periodo di tempo specificato da questa proprietà, l'operazione di scrittura genera un IOException.

System_CAPS_noteNota

Questa proprietà influisce sulle operazioni di scrittura sincrona solo eseguite mediante una chiamata di Write metodo. Questa proprietà non influisce sul scritture asincrone eseguite chiamando il BeginWrite metodo.

Esempio di codice seguente imposta il timeout di scrittura per un flusso di rete a 10 millisecondi.

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.
            TcpClient tcpClient = tcpListener.AcceptTcpClient();
            Console.WriteLine("Connection accepted.");
            // Get the stream to write the message 
            // that will be sent to the client.
            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();
        }
    }
}

.NET Framework
Disponibile da 2.0
Torna all'inizio
Mostra: