C# 两个定时事件一个windows服务

C# 两个定时事件一个windows服务,c#,windows-services,C#,Windows Services,我正在尝试编写一个运行两个不同定时事件的windows服务。这就是我所拥有的,我只是想确保它符合我的意愿 我打算每30分钟运行一个进程,每小时运行一个进程 public static System.Timers.Timer timer1; public static System.Timers.Timer timer2; public Crawler_Coupon() { InitializeComponent(); } pro

我正在尝试编写一个运行两个不同定时事件的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();

    }

[更新]

这需要是windows服务,有什么具体原因吗?创建windows服务来执行间歇任务不是最佳做法

您可能需要创建一个控制台应用程序或2,并设置在这些时间间隔上运行的2个计划任务


[更新]

这需要是windows服务,有什么具体原因吗?创建windows服务来执行间歇任务不是最佳做法

您可能需要创建一个控制台应用程序或2,并设置在这些时间间隔上运行的2个计划任务

[更新]

为什么不直接使用Windows任务计划程序来计划进程的运行?

[更新]


为什么不直接使用Windows任务计划程序来计划进程的运行?

首选项,如果这是一件很难做到的事情,我可能会将其分成两部分。您可以使用一个计时器,这是计时间隔的一个常见因素。你设置了一个计时器,每30分钟响一次,然后你检查每一次都有多长时间了,以及是否去做。首先,如果这是一件很难做到的事情,我可能会把它分成两部分。你可以使用一个计时器,这是计时间隔的一个常见因素。您设置了一个每30分钟响一次的计时器,并检查您执行每项操作的时间以及是否执行。我想将其作为后台处理和安全服务保留。对不起,我的意思是使用“Windows任务计划程序”。使用“无论用户是否登录都运行”选项,任务计划程序将在后台(非交互式桌面)运行您的任务。我想将其保留为后台处理和安全服务。对不起,我的意思是使用“Windows任务计划程序”。使用“无论用户是否登录都运行”选项,任务计划程序将在后台(非交互式桌面)运行您的任务。感谢您告诉我们您正在尝试执行的操作。祝你好运。你的代码应该工作得很好,你遇到了什么问题?谢谢你告诉我们你想做什么。祝你好运。你的代码应该工作得很好,你遇到了什么问题?