IOutputChannel.BeginSend 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í.
Comienza una operación asincrónica para enviar un mensaje.
Sobrecargas
BeginSend(Message, AsyncCallback, Object) |
Comienza una operación asincrónica para transmitir un mensaje al destino del canal de salida. |
BeginSend(Message, TimeSpan, AsyncCallback, Object) |
Comienza una operación asincrónica para transmitir un mensaje al destino del canal de salida dentro de un intervalo de tiempo especificado. |
BeginSend(Message, AsyncCallback, Object)
- Source:
- IOutputChannel.cs
- Source:
- IOutputChannel.cs
- Source:
- IOutputChannel.cs
Comienza una operación asincrónica para transmitir un mensaje al destino del canal de salida.
public:
IAsyncResult ^ BeginSend(System::ServiceModel::Channels::Message ^ message, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginSend (System.ServiceModel.Channels.Message message, AsyncCallback callback, object state);
abstract member BeginSend : System.ServiceModel.Channels.Message * AsyncCallback * obj -> IAsyncResult
Public Function BeginSend (message As Message, callback As AsyncCallback, state As Object) As IAsyncResult
Parámetros
- callback
- AsyncCallback
Delegado AsyncCallback.
- state
- Object
Objeto, especificado por la aplicación, que contiene información de estado asociada a la operación de envío asincrónica.
Devoluciones
IAsyncResult que hace referencia a la transmisión asincrónica de un mensaje.
Ejemplos
El código siguiente muestra cómo implementar este método:
public IAsyncResult BeginReceiveRequest(TimeSpan timeout, AsyncCallback callback, object state)
{
ReceiveRequestAsyncResult result = new ReceiveRequestAsyncResult(this, timeout, callback, state);
result.Begin();
return result;
}
Comentarios
El destino para los mensajes enviados en un canal de salida se especifica en la hora de creación del canal.
El método BeginSend no garantiza la entrega de mensaje al extremo remoto. Si se requieren garantías de la entrega, utilice IOutputSessionChannel.
Si el mensaje enviado es mayor que el tamaño de mensaje máximo permitido por el enlace utilizado, se inicia QuotaExceededException. La propiedad MaxReceivedMessageSize establece el tamaño del mensaje máximo. El valor predeterminado es 65 536 bytes.
Se aplica a
BeginSend(Message, TimeSpan, AsyncCallback, Object)
- Source:
- IOutputChannel.cs
- Source:
- IOutputChannel.cs
- Source:
- IOutputChannel.cs
Comienza una operación asincrónica para transmitir un mensaje al destino del canal de salida dentro de un intervalo de tiempo especificado.
public:
IAsyncResult ^ BeginSend(System::ServiceModel::Channels::Message ^ message, TimeSpan timeout, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginSend (System.ServiceModel.Channels.Message message, TimeSpan timeout, AsyncCallback callback, object state);
abstract member BeginSend : System.ServiceModel.Channels.Message * TimeSpan * AsyncCallback * obj -> IAsyncResult
Public Function BeginSend (message As Message, timeout As TimeSpan, callback As AsyncCallback, state As Object) As IAsyncResult
Parámetros
- timeout
- TimeSpan
El objeto TimeSpan que especifica el tiempo con el que cuenta la operación de envío para completarse antes de que se agote el tiempo de espera.
- callback
- AsyncCallback
El delegado AsyncCallback que recibe la notificación de la finalización de la operación de envío asincrónica.
- state
- Object
Objeto, especificado por la aplicación, que contiene información de estado asociada a la operación de envío asincrónica.
Devoluciones
IAsyncResult que hace referencia a la operación de envío asincrónica.
Ejemplos
El código siguiente muestra cómo implementar este método:
public RequestContext EndReceiveRequest(IAsyncResult result)
{
return ReceiveRequestAsyncResult.End(result);
}
Comentarios
El destino para los mensajes enviados en un canal de salida se especifica en la hora de creación del canal.
El método BeginSend no garantiza la entrega de mensaje al extremo remoto. Si se requieren garantías de la entrega, utilice IOutputSessionChannel.
Si el mensaje enviado es mayor que el tamaño de mensaje máximo permitido por el enlace utilizado, se inicia QuotaExceededException. La propiedad MaxReceivedMessageSize establece el tamaño del mensaje máximo. El valor predeterminado es 65 536 bytes.
Notas a los implementadores
La operación debería iniciar TimeoutException si se supera el timeout
especificado.