C# WCF并发模型混淆
我正在阅读这个msdn页面,上面说并发模型默认为单一: 是的,此页面使它看起来像是为每个客户端创建了一个新实例:(请参阅每个呼叫服务标题): “每次调用服务”是Windows通信基础默认值 实例化模式。当为每次调用配置服务类型时 激活、服务实例、公共语言运行库(CLR) 对象,仅当客户端调用正在进行时才存在。每个客户端 请求获取一个新的专用服务实例。“ 我读错了吗 顺便说一句,我在windows服务中托管我的WCFC# WCF并发模型混淆,c#,wcf,C#,Wcf,我正在阅读这个msdn页面,上面说并发模型默认为单一: 是的,此页面使它看起来像是为每个客户端创建了一个新实例:(请参阅每个呼叫服务标题): “每次调用服务”是Windows通信基础默认值 实例化模式。当为每次调用配置服务类型时 激活、服务实例、公共语言运行库(CLR) 对象,仅当客户端调用正在进行时才存在。每个客户端 请求获取一个新的专用服务实例。“ 我读错了吗 顺便说一句,我在windows服务中托管我的WCF 它是单个的还是多个的?对CodeProject上发生的事情有一个很好的解释。以下
它是单个的还是多个的?对CodeProject上发生的事情有一个很好的解释。以下是网址: 长话短说,它是InstanceMode和并发性的组合。默认设置是对InstanceMode使用PerCall,对并发性使用Single。净影响:
- 每次调用服务(PerCall)都会创建为您的请求提供服务的对象的新实例
- 您的服务一次只使用一个线程为请求提供服务(单个)
不要将其与InstanceMode=Singleton和ConcurrencyMode=Multiple或Reentrant混淆,其中一个实例在多个线程上服务多个请求。对CodeProject上发生的事情有一个很好的解释。以下是网址: 长话短说,它是InstanceMode和并发性的组合。默认设置是对InstanceMode使用PerCall,对并发性使用Single。净影响:
- 每次调用服务(PerCall)都会创建为您的请求提供服务的对象的新实例
- 您的服务一次只使用一个线程为请求提供服务(单个)