我是WCF的新手。经常注视wcf代码&文章。在查看了许多代码之后,我经常坚持使用非常基本的东西,并且没有对下面的问题进行详细的讨论。所以这里是我的几个基本问题....并寻找详细讨论样本情况和示例代码。
什么是InstanceContextMode? 很多人使用InstanceContextMode Single或PerCall或PerSession?
我需要深入了解何时应该使用InstanceContextMode Single或PerCall或PerSession?它基本上做了什么??
简要告诉我,当我打开单身时会发生什么事情或者PerCall或PerSession会发生什么? Single或PerCall或PerSession之间有什么区别
什么是默认的InstanceContextMode? p>
答案 0 :(得分:2)
InstanceContextMode属性指示WCF将如何创建服务类的实例以及这些实例是否将在请求之间重用。
Multiple
,否则所有呼叫都将被序列化为服务。对于高容量无状态服务,使用Single
和ConcurrencyMode.Multiple
可以减少分配的服务实例数以及垃圾收集器的相关压力。但是,WCF不要求/假设您的服务是无状态的,这就是默认PerSession
的原因。
您可以通过在服务的默认构造函数中设置断点来验证不同实例上下文模式的行为。