2016-10-03 50 views
4

我有要求,我需要有一些任务永久运行,而其他一些应该只是在计划的基础上运行,但我不知道处理这种情况的最佳方法是什么。永久性和计划任务的最佳设计

对于预定的工作,我以为我会使用线程池和永久运行的作业,我以为我只是有一个线程数组,将创建并开始我的Windows Service开始。

这是一个正确的和/或最好的方法或有没有更好的方法来处理?

请注意,我需要能够取消正在运行的作业,无论它是否安排和/或永久运行。

感谢

PS:请注意,这个问题已经完全重新表述,因为它本来是过于宽泛。我希望这是一个更好的尝试。

UPDATE:

请注意,这个问题不是一个调度的问题,但更多的是什么是最好的办法根据我的2项要求即定VS连续来处理我的线程。

对不起,有任何混淆。

+0

我担心你的问题对于一个答案变得太宽泛。 – Fabio

+0

@Fabio你说得对。我会重新解释它并简化我的问题。感谢您的反馈。 – Thierry

回答

2

编写自己的调度程序是not as trivial,因为它看起来像。考虑到这一点,只有两个可靠的选项:使用Quartz.NET(这是我个人推荐的)或使用Windows计划程序。根据我的口味,Windows Scheduler(如果与TSMW接口)对于一个非常麻烦的API有一定的学习曲线(不是很陡)。

+0

嗨安东,感谢您的反馈,但现在我简化了我的问题,因为它太宽泛了,我觉得,这并不能正确解释我的实际问题。我的问题不在调度程序中。我过去曾经设计过,正如你所说,它是微不足道的。我关心的是如何最好地处理有关定期工作和永久工作的线程。在将后台线程永久运行的作业存储时,将定时作业使用线程池是否可行?还是有更好的方法来做到这一点?对不起,如果有任何混淆。 – Thierry