上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
3.4 信道管理器(Channel Manager)
信道管理器是信道的创建者,一般来说信道栈中的每个信道都对应着一个信道管理器。由于信道本身是由信道管理器创建的,所以信道对应的信道管理器也构成了一个信道管理器栈,信道管理器的顺序决定由它所创建的信道在信道栈中的位置。
对于WCF的信道层来说,信道管理器在服务端和客户端扮演着不同的角色,服务端的信道管理器用于监听来自客户端的请求,而客户端的信道仅仅是单纯地创建用于请求发送和回复接收的通道。因此,客户端的消息管理器又称为信道监听器(Channel Listener),客户端的信道管理器则成为信道工厂(Channel Factory)。
在WCF中,所有的信道管理器,不管是位于服务端的信道监听器还是客户端的信道工厂,都继承自一个基类:System.ServiceModel.Channels.ChannelManagerBase。ChannelManagerBase直接继承自CommunicationObject,并实现了接口IDefaultCommunicationTimeouts。
public abstract class ChannelManagerBase : CommunicationObject, IDefaultCommunicationTimeouts { //成员 }