我需要在.NET中创建一个维护(内部)状态的内存服务,产生多个线程并且通常长时间运行。有很多选项 -.NET中长时间运行的有状态服务
- 好,旧的Windows服务
- Windows通讯服务
- Windows工作流基础
我真不知道该选哪。大部分功能都在这个服务使用的库中,所以服务本身相当简单。
一方面,服务主机尽可能接近“简单工作”(不包括Windows服务)是非常重要的。另一方面,重要的是不要因为没有外部活动而导致主机取消服务,这会使WCF变得非常“恐怖”。对于WF来说,最强大的卖点就是能够创建流程,这个流程,这是我不需要也不需要的。总结一下,微软的大量技术让我感到有些困惑。
我会很感激有关(我没有提及或其他的)的状态,长时间运行的服务的问题,在.NET
感谢各方案的利弊帮助,
阿萨夫
PS,
我使用.NET 4
编辑:
- 我的意思是主机“简单工作”,例如,我创建的服务如果崩溃,就会重新激活。
- 我想这个问题的原因是我以前创建了Windows服务(我认为它是用Win32 API的简单C++),并且我不想错过简单的东西,如果有这样的作为事情。
感谢迄今为止的所有回复!
Asaf。
编辑2:
我将使用一个Windows服务,并且可能举办里面一个WCF服务,以允许其他进程与它通信。
感谢,
阿萨夫
这是一个很好的问题+1和偏好的 – 2010-03-11 16:58:30
如果您还没有尝试在.NET中创建Windows服务,我建议您尝试一下。它并不比控制台应用程序复杂得多,并且有很多方法来处理重启和信号。 – 2010-03-11 17:55:27