IOutputChannel.BeginSend Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Inicia uma operação assíncrona para enviar uma mensagem.
Sobrecargas
BeginSend(Message, AsyncCallback, Object) |
Inicia uma operação assíncrona para transmitir uma mensagem para o destino do canal de saída. |
BeginSend(Message, TimeSpan, AsyncCallback, Object) |
Inicia uma operação assíncrona para transmitir uma mensagem para o destino do canal de saída dentro de um intervalo de tempo especificado. |
BeginSend(Message, AsyncCallback, Object)
- Origem:
- IOutputChannel.cs
- Origem:
- IOutputChannel.cs
- Origem:
- IOutputChannel.cs
Inicia uma operação assíncrona para transmitir uma mensagem para o destino do canal de saída.
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
O delegado AsyncCallback.
- state
- Object
Um objeto, especificado pelo aplicativo, que contém informações de estado associadas à operação de envio assíncrona.
Retornos
O IAsyncResult que faz referência à transmissão de mensagens assíncronas.
Exemplos
O código a seguir ilustra como implementar esse método:
public IAsyncResult BeginReceiveRequest(TimeSpan timeout, AsyncCallback callback, object state)
{
ReceiveRequestAsyncResult result = new ReceiveRequestAsyncResult(this, timeout, callback, state);
result.Begin();
return result;
}
Comentários
O destino das mensagens enviadas em um canal de saída é especificado no momento da criação do canal.
O BeginSend método não garante a entrega da mensagem para o ponto de extremidade remoto. Se forem necessárias garantias de entrega, use o IOutputSessionChannel.
Se a mensagem enviada for maior que o tamanho máximo da mensagem permitida pela associação que está sendo usada, uma QuotaExceededException será gerada. O tamanho máximo da mensagem é definido pela MaxReceivedMessageSize propriedade . O valor padrão é 65536 bytes.
Aplica-se a
BeginSend(Message, TimeSpan, AsyncCallback, Object)
- Origem:
- IOutputChannel.cs
- Origem:
- IOutputChannel.cs
- Origem:
- IOutputChannel.cs
Inicia uma operação assíncrona para transmitir uma mensagem para o destino do canal de saída dentro de um intervalo de tempo 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
O TimeSpan que especifica quanto tempo a operação de envio tem para ser concluída antes de atingir o tempo limite.
- callback
- AsyncCallback
O delegado de AsyncCallback que recebe a notificação da conclusão da operação de envio assíncrona.
- state
- Object
Um objeto, especificado pelo aplicativo, que contém informações de estado associadas à operação de envio assíncrona.
Retornos
O IAsyncResult que faz referência à operação de envio assíncrona.
Exemplos
O código a seguir ilustra como implementar esse método:
public RequestContext EndReceiveRequest(IAsyncResult result)
{
return ReceiveRequestAsyncResult.End(result);
}
Comentários
O destino das mensagens enviadas em um canal de saída é especificado no momento da criação do canal.
O BeginSend método não garante a entrega da mensagem para o ponto de extremidade remoto. Se forem necessárias garantias de entrega, use IOutputSessionChannel.
Se a mensagem enviada for maior que o tamanho máximo da mensagem permitida pela associação que está sendo usada, uma QuotaExceededException será gerada. O tamanho máximo da mensagem é definido pela MaxReceivedMessageSize propriedade . O valor padrão é 65536 bytes.
Notas aos Implementadores
A operação deverá gerar um TimeoutException se o especificado timeout
for excedido.