Socket.EndSendFile(IAsyncResult) Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Termina un invio asincrono in sospeso di un file.
public:
void EndSendFile(IAsyncResult ^ asyncResult);
public void EndSendFile(IAsyncResult asyncResult);
member this.EndSendFile : IAsyncResult -> unit
Public Sub EndSendFile (asyncResult As IAsyncResult)
Parametri
- asyncResult
- IAsyncResult
Oggetto IAsyncResult che archivia le informazioni sullo stato per questa operazione asincrona.
Eccezioni
Solo .NET 8+: il socket non è connesso a un host remoto.
Solo .NET Framework, .NET Core e .NET 5-6: è Socket stato chiuso.
asyncResult è vuoto.
asyncResult non è stato restituito da una chiamata al BeginSendFile(String, AsyncCallback, Object) metodo .
EndSendFile(IAsyncResult) è stato precedentemente chiamato per l'oggetto asincrono BeginSendFile(String, AsyncCallback, Object).
Si è verificato un errore durante il tentativo di accesso al socket.
oppure
Solo .NET 7+: l'oggetto Socket è stato chiuso.
Commenti
Importante
Si tratta di un'API di compatibilità. Non è consigliabile usare i metodi APM (Begin* e End*) per nuovi sviluppi. Usare invece gli Taskequivalenti basati su .
EndSendFile completa l'operazione avviata da BeginSend. È necessario passare l'oggetto IAsyncResult creato dalla chiamata corrispondente BeginSend .
Se si usa un protocollo senza connessione, EndSendFile blocca fino all'invio del datagramma. Se si usa un protocollo orientato alla connessione, EndSendFile blocca fino a quando non viene inviato l'intero file. Non è garantito che i dati inviati vengano visualizzati immediatamente nella rete. Per aumentare l'efficienza della rete, il sistema sottostante può ritardare la trasmissione fino a quando non viene raccolta una quantità significativa di dati in uscita. Un completamento corretto del BeginSendFile metodo significa che il sistema sottostante ha avuto spazio per memorizzare nel buffer i dati per un invio di rete.
Annotazioni
Se si riceve un oggetto SocketException, utilizzare la SocketException.ErrorCode proprietà per ottenere il codice di errore specifico. Dopo aver ottenuto questo codice, fare riferimento alla documentazione relativa al codice di errore dell'API Windows Sockets versione 2 per una descrizione dettagliata dell'errore.
Annotazioni
Questo membro restituisce informazioni di traccia quando si abilita la traccia di rete nell'applicazione. Per altre informazioni, vedere Traccia di rete in .NET Framework.