长时间运行的Windows服务

ess*_*LAH 1 .net c# windows-services

伙计们,

我想开发一个长期运行的Windows服务(几个月应该没有问题),我想知道这里有什么更好的选择:

  1. 在OnStop方法中使用while(true)循环
  2. 使用计时器每n秒打勾并触发我的代码
  3. 还有其他选择吗?

谢谢Essam

Joe*_*Joe 6

我不会做#1.

我要么做#2,要么在OnStart期间分离一个单独的线程来完成实际的工作.


sho*_*osh 6

除了#1以外
的任何东西服务经理(或用户,如果他是激活控件的人)期望OnStart()OnStop()及时返回.
通常这样做的方法是启动自己的线程来保持事物的运行和循环,听取可能告诉它停止的事件.