Socket.EndSendTo(IAsyncResult) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Finaliza un envío asincrónico pendiente en una ubicación específica.
public:
int EndSendTo(IAsyncResult ^ asyncResult);
public int EndSendTo (IAsyncResult asyncResult);
member this.EndSendTo : IAsyncResult -> int
Public Function EndSendTo (asyncResult As IAsyncResult) As Integer
Parámetros
- asyncResult
- IAsyncResult
IAsyncResult que almacena información de estado así como cualquier dato definido por el usuario para esta operación asincrónica.
Devoluciones
Si se realiza con éxito, el número de bytes enviados; en caso contrario, un error de Socket no válido.
Excepciones
asyncResult
es null
.
asyncResult
no se devolvió mediante una llamada al método BeginSendTo(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object).
EndSendTo(IAsyncResult) fue llamado previamente para el envío asincrónico.
Solo .NET Framework, .NET Core y .NET 5-6: Socket se ha cerrado .
Comentarios
Importante
Se trata de una API de compatibilidad. No se recomienda usar los métodos de APM (Begin*
y End*
) para el nuevo desarrollo. En su lugar, use los Task
equivalentes basados en .
EndSendTo completa la operación iniciada por BeginSendTo. Debe pasar el IAsyncResult objeto creado por la llamada coincidente BeginSendTo .
Si usa un protocolo sin conexión, EndSendTo se bloqueará hasta que se envíe el datagrama. Si usa un protocolo orientado a la conexión, EndSendTo se bloqueará hasta que se envíe el número solicitado de bytes. No hay ninguna garantía de que los datos que envíe aparecerán en la red inmediatamente. Para aumentar la eficiencia de la red, el sistema subyacente puede retrasar la transmisión hasta que se recopile una cantidad significativa de datos salientes. Una finalización correcta del BeginSendTo método significa que el sistema subyacente ha tenido espacio para almacenar en búfer los datos de un envío de red.
Nota
Si recibe un SocketException, use la SocketException.ErrorCode propiedad para obtener el código de error específico. Después de obtener este código, consulte la documentación del código de error de la API de Windows Sockets versión 2 para obtener una descripción detallada del error.
Nota
Este miembro genera información de seguimiento cuando se habilita el seguimiento de red en la aplicación. Para obtener más información, consulte Seguimiento de red en .NET Framework.