繁体   English   中英

WCF服务主机中的计时器

[英]Timer in WCF service host

初始化计时器以在WCF服务主机中执行定期任务是个好主意,还是会干扰正在托管的服务的生命周期或性能?

我有一个自定义服务主机,该主机在启动和停止时宣布其可用性(目的是为客户端创建注册表)。 我想创建一个计时器来定期执行此操作,但是我担心这会导致问题(我还没有遇到任何问题,但也许我还没有对此施加足够的压力),或者它会占用资源并破坏性能服务。 当然,其想法是在OnOpened和OnClosing事件上连接计时器。

值得一提的是,此服务托管在IIS中,因此IIS是实例化和管理服务主机的一个。

初始化计时器以在WCF服务主机中执行定期任务是个好主意,还是会干扰正在托管的服务的生命周期或性能?

这将取决于WCF服务的托管位置。 如果将其托管在IIS中,则可能会出现问题。 这样做的原因是因为IIS可以随时决定回收ASP.NET应用程序池,而您的计时器只会停止工作。 您不能依靠它。 另一方面,如果您已将WCF服务托管在Windows服务自身主机中,则可以使用计时器。 您可以查看following blog post有关在ASP.NET主机中实现重复执行后台任务的危险的following blog post

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM