我最近接触到这个词Instance Deactivation
.
a) 那是什么?
b) 我们需要这个做什么?
c) 它在什么情况下有用?
我正在寻找一个易于理解的简单答案,如果可能的话,可以使用一些伪代码。
Thanks
当调用 WCF 方法时,它会传递给服务instance.
实例停用简单地指WCF系统处置该实例的时刻。
在每次调用服务中,实例停用将在每次方法调用后发生。
在每会话服务中,当客户端在代理上调用 Close 或达到传输会话的不活动超时时,将发生实例停用。
在单例服务中,当服务主机关闭时,实例将被停用。
您还可以配置单独的服务方法来触发实例停用:。
[OperationBehavior(ReleaseInstanceMode = ReleaseInstanceMode.AfterCall)]
public void MyMethodWhichTriggersAnAutomaticRelease()
{
// ...
}
除此之外,您还可以手动触发服务实例发布:
public void MyMethodWhichTriggersAManualRelease()
{
OperationContext.Current.InstanceContext.ReleaseServiceInstance();
}
朱瓦尔·洛伊 https://rads.stackoverflow.com/amzn/click/com/0596805489关于是否应该手动覆盖标准实例停用机制有这样的说法:
实例停用是
优化技术,和所有一样
优化技术,你应该
一般情况下应避免使用。考虑
仅在以下情况下使用实例停用
未能满足您的表现
和可扩展性目标,并且当小心时
检查和分析已证明
毫无疑问,使用实例
停用将改善
情况。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)