两个定时事件一个窗口服务

时间:2012-02-08 13:54:53

标签: c# windows-services

我试图完成编写一个将运行两个不同的定时事件的Windows服务。这就是我所拥有的,我只是想确保它符合我的意图。

我打算每30分钟运行一个进程,每小时运行一个进程。

    public static System.Timers.Timer timer1;
    public static System.Timers.Timer timer2;

    public Crawler_Coupon()
    {
        InitializeComponent();
    }

    protected override void OnStart(string[] args)
    {
        ControlStation();
    }

    private static void ControlStation()
    {

        timer1 = new Timer();
        timer1.Interval = 1800000;
        //timer1.Interval = 10000;
        timer1.Elapsed += new ElapsedEventHandler(OnTimedEvent);
        timer1.Start();

        timer2 = new Timer();
        timer2.Interval = 3600000;
        //timer1.Interval = 10000;
        timer2.Elapsed += new ElapsedEventHandler(OnTimedEvent2);
        timer2.Start();

    }

2 个答案:

答案 0 :(得分:2)

[增订]

为什么不使用 Windows任务计划程序来安排流程的运行?

答案 1 :(得分:1)

[<强>更新

是否有特定原因需要这是一个Windows服务?创建Windows服务以执行间歇性任务不是最佳做法。

您可能想要创建一个控制台应用程序或2并设置2个按这些间隔运行的计划任务。

Windows Service with multiple timers