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

Metodo FileStream.EndWrite (IAsyncResult)

 

Data di pubblicazione: ottobre 2016

Termina un'operazione di scrittura asincrona, rimanendo bloccato fino al completamento dell'operazione di I/O. (Considerare, in alternativa, l'uso di WriteAsync. Vedere la sezione Osservazioni).

Spazio dei nomi:   System.IO
Assembly:  mscorlib (in mscorlib.dll)

public override void EndWrite(
	IAsyncResult asyncResult
)

Parametri

asyncResult
Type: System.IAsyncResult

Richiesta di I/O asincrona in sospeso.

Exception Condition
ArgumentNullException

asyncResult è null.

ArgumentException

L'oggetto IAsyncResult non è stato creato chiamando BeginWrite in questa classe.

InvalidOperationException

EndWrite viene chiamato più volte.

IOException

Il flusso è chiuso o si è verificato un errore interno.

In the .NET Framework 4 and earlier versions, you have to use methods such as M:System.IO.FileStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object) and M:System.IO.FileStream.EndWrite(System.IAsyncResult) to implement asynchronous file operations. These methods are still available in the net_v45 to support legacy code; however, the new async methods, such as M:System.IO.FileStream.ReadAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken), M:System.IO.FileStream.WriteAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken), M:System.IO.Stream.CopyToAsync(System.IO.Stream), and M:System.IO.FileStream.FlushAsync(System.Threading.CancellationToken), help you implement asynchronous file operations more easily.

This method overrides M:System.IO.Stream.EndWrite(System.IAsyncResult).

EndWrite must be called exactly once on every IAsyncResult from BeginWrite. EndWrite will block until the I/O operation has completed.

This code example is part of a larger example provided for the M:System.IO.FileStream.#ctor(System.String,System.IO.FileMode,System.IO.FileAccess,System.IO.FileShare,System.Int32,System.Boolean) constructor.

static void EndWriteCallback(IAsyncResult asyncResult)
{
    State tempState = (State)asyncResult.AsyncState;
    FileStream fStream = tempState.FStream;
    fStream.EndWrite(asyncResult);

    // Asynchronously read back the written data.
    fStream.Position = 0;
    asyncResult = fStream.BeginRead(
        tempState.ReadArray, 0 , tempState.ReadArray.Length, 
        new AsyncCallback(EndReadCallback), tempState);

    // Concurrently do other work, such as 
    // logging the write operation.
}

.NET Framework
Disponibile da 1.1
Silverlight
Disponibile da 2.0
Windows Phone Silverlight
Disponibile da 7.0
Torna all'inizio
Mostra: