IDuplexSession.CloseOutputSession Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Termina a sessão de saída que indica que não serão enviadas mais mensagens a partir deste endpoint no canal associado à sessão.
Sobrecargas
| Name | Description |
|---|---|
| CloseOutputSession() |
Termina a sessão de saída que indica que não serão enviadas mais mensagens a partir deste endpoint no canal associado à sessão. |
| CloseOutputSession(TimeSpan) |
Termina a sessão de saída que indica que não serão enviadas mais mensagens deste ponto final no canal associado à sessão dentro de um intervalo de tempo especificado. |
CloseOutputSession()
- Origem:
- IDuplexSession.cs
- Origem:
- IDuplexSession.cs
- Origem:
- IDuplexSession.cs
Termina a sessão de saída que indica que não serão enviadas mais mensagens a partir deste endpoint no canal associado à sessão.
public:
void CloseOutputSession();
public void CloseOutputSession();
abstract member CloseOutputSession : unit -> unit
Public Sub CloseOutputSession ()
Observações
A chamada CloseOutputSession() sinaliza para o outro lado da sessão que deve ser retornada null de quaisquer chamadas pendentes ou subsequentes feitas para Receive.
CloseOutputSession é idempotente, por isso chamá-lo novamente não tem efeito.
Terminar a sessão de saída não afeta a sessão de entrada e, por isso, não faz qualquer declaração sobre a capacidade de receber mensagens na sessão associada ao canal de entrada.
Notas para Implementadores
CloseOutputSession() é um método de sessão que pode interagir com o IDuplexSessionChannel que detém a sessão. Em particular, se a vida útil da sua sessão for combinada com a duração do canal (como acontece com o TCP e a fiabilidade da sessão e segurança):
Se CloseOutputSession() for chamado antes Close() de ser chamado no canal, Close() deve esperar até CloseOutputSession() terminar.
Se o canal estiver no Created estado ou, OpeningCloseOutputSession() deve lançar um InvalidOperationException.
Se o canal estiver no Faulted estado, CloseOutputSession() deverá lançar um CommunicationObjectFaultedException.
O canal deve falhar se CloseOutputSession() for lançado.
A implementação de Close() on the channel deve chamar CloseOutputSession() e depois verificar que Receive() retorna
null, o que indica que CloseOutputSession() foi chamado do outro lado da sessão.
Aplica-se a
CloseOutputSession(TimeSpan)
- Origem:
- IDuplexSession.cs
- Origem:
- IDuplexSession.cs
- Origem:
- IDuplexSession.cs
Termina a sessão de saída que indica que não serão enviadas mais mensagens deste ponto final no canal associado à sessão dentro de um intervalo de tempo especificado.
public:
void CloseOutputSession(TimeSpan timeout);
public void CloseOutputSession(TimeSpan timeout);
abstract member CloseOutputSession : TimeSpan -> unit
Public Sub CloseOutputSession (timeout As TimeSpan)
Parâmetros
- timeout
- TimeSpan
O TimeSpan que especifica o intervalo de tempo dentro do qual a operação deve ser concluída.
Observações
A chamada CloseOutputSession(TimeSpan) sinaliza para o outro lado da sessão que deve ser retornada null de quaisquer chamadas pendentes ou subsequentes feitas para Receive.
CloseOutputSession é idempotente, por isso chamá-lo novamente não tem efeito.
Terminar a sessão de saída não afeta a sessão de entrada e, por isso, não faz qualquer declaração sobre a capacidade de receber mensagens na sessão associada ao canal de entrada.
Notas para Implementadores
CloseOutputSession() é um método de sessão que pode interagir com o IDuplexSessionChannel que detém a sessão. Em particular, se a vida útil da sua sessão for combinada com a duração do canal (como acontece com o TCP e a fiabilidade da sessão e segurança):
Se CloseOutputSession() for chamado antes Close() de ser chamado no canal, Close() deve esperar até CloseOutputSession() terminar.
Se o canal estiver no Created estado ou, OpeningCloseOutputSession() deve lançar um InvalidOperationException.
Se o canal estiver no Faulted estado, CloseOutputSession() deverá lançar um CommunicationObjectFaultedException.
O canal deve falhar se CloseOutputSession() for lançado.
A implementação de Close() on the channel deve chamar CloseOutputSession() e depois verificar que Receive() retorna
null, indicando que CloseOutputSession() foi chamada do outro lado da sessão.