IDuplexSession.CloseOutputSession 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
终止出站会话,指示不能再在此会话的关联通道上从此终结点发送消息。
重载
CloseOutputSession() |
终止出站会话,指示不能再在此会话的关联通道上从此终结点发送消息。 |
CloseOutputSession(TimeSpan) |
终止出站会话,指示在指定时间间隔内,不能再在此会话的关联通道上从此终结点发送消息。 |
CloseOutputSession()
- Source:
- IDuplexSession.cs
终止出站会话,指示不能再在此会话的关联通道上从此终结点发送消息。
public:
void CloseOutputSession();
public void CloseOutputSession ();
abstract member CloseOutputSession : unit -> unit
Public Sub CloseOutputSession ()
注解
调用 CloseOutputSession() 即会通知会话的另一端,对 null
的任何未完成调用或后续调用都应返回 Receive。
CloseOutputSession 是幂等的,因此再次调用它不起作用。
终止出站会话不会影响入站会话,因此也不影响从输入通道的关联会话中接收消息。
实施者说明
CloseOutputSession() 是一个会话方法,可以与拥有此会话的 IDuplexSessionChannel 进行交互。 具体而言,如果会话生存期与通道生存期结合在一起(就像 TCP 与可靠会话和安全的情况):
如果在CloseOutputSession()通道Close()上调用 之前Close()调用 ,则应等待CloseOutputSession()完成。
如果通道处于 Created 或 状态,CloseOutputSession()应引发 InvalidOperationExceptionOpening 。
如果通道处于 状态 Faulted , CloseOutputSession() 应引发 CommunicationObjectFaultedException。
如果 CloseOutputSession() 引发,则通道应出错。
通道上的 实现 Close() 应调用 CloseOutputSession() ,然后验证是否 Receive() 返回
null
,这表示 CloseOutputSession() 是从会话的另一端调用的。
适用于
CloseOutputSession(TimeSpan)
- Source:
- IDuplexSession.cs
终止出站会话,指示在指定时间间隔内,不能再在此会话的关联通道上从此终结点发送消息。
public:
void CloseOutputSession(TimeSpan timeout);
public void CloseOutputSession (TimeSpan timeout);
abstract member CloseOutputSession : TimeSpan -> unit
Public Sub CloseOutputSession (timeout As TimeSpan)
参数
注解
调用 CloseOutputSession(TimeSpan) 即会通知会话的另一端,对 null
的任何未完成调用或后续调用都应返回 Receive。
CloseOutputSession 是幂等的,因此再次调用它不起作用。
终止出站会话不会影响入站会话,因此也不影响从输入通道的关联会话中接收消息。
实施者说明
CloseOutputSession() 是一个会话方法,可以与拥有此会话的 IDuplexSessionChannel 进行交互。 具体而言,如果会话生存期与通道生存期结合在一起(就像 TCP 与可靠会话和安全的情况):
如果在CloseOutputSession()通道Close()上调用 之前Close()调用 ,则应等待CloseOutputSession()完成。
如果通道处于 Created 或 状态,CloseOutputSession()应引发 InvalidOperationExceptionOpening 。
如果通道处于 状态 Faulted , CloseOutputSession() 应引发 CommunicationObjectFaultedException。
如果 CloseOutputSession() 引发,则通道应出错。
通道上的 实现 Close() 应调用 CloseOutputSession() ,然后验证是否 Receive() 返回
null
,指示 CloseOutputSession() 是从会话的另一端调用的。