2009-11-27 100 views
1

我是Wcf的新手,并试图创建我的第一个Wcf服务。增加了具有非托管代码并进行文件操作的类(新程序集)。服务行为设置为跟随Wcf隔离实例

InstanceContextMode = InstanceContextMode.Single

ConcurrencyMode = ConcurrencyMode.Single

当服务被访问是单一的模式,创建新的文件操作类。我注意到,如果文件操作类失败(内存泄漏或严重错误),则受到之前连接影响的所有主机的新连接。

是否有可能创建完全相互隔离的客户端连接关闭后完全销毁的Wcf实例?

问候, 托马斯

回答

2

是的,这是首选的方式 - 这就是所谓的 “每呼”:

InstanceContextMode = InstanceContextMode.PerCall

ConcurrencyMode = ConcurrencyMode.Single

这样,每个请求进入您的WCF服务将获得它自己的,单独的,孤立的服务类实例,并且该实例将处理该请求,然后被处置。

这应该给你最大的性能,并隔离彼此的请求。