mirror of
https://github.com/kevincolyar/CronNET.git
synced 2024-05-17 05:02:35 +02:00
42 lines
907 B
C#
42 lines
907 B
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Timers;
|
|
|
|
namespace CronNET
|
|
{
|
|
public class CronDaemon
|
|
{
|
|
private readonly Timer timer = new Timer(60000);
|
|
private readonly List<CronJob> cron_jobs = new List<CronJob>();
|
|
|
|
public CronDaemon()
|
|
{
|
|
timer.Elapsed += timer_elapsed;
|
|
}
|
|
|
|
public void add_job(CronJob cron_job)
|
|
{
|
|
cron_jobs.Add(cron_job);
|
|
}
|
|
|
|
public void start()
|
|
{
|
|
timer.Start();
|
|
}
|
|
|
|
public void stop()
|
|
{
|
|
timer.Stop();
|
|
|
|
foreach (CronJob job in cron_jobs)
|
|
job.abort();
|
|
}
|
|
|
|
private void timer_elapsed(object sender, ElapsedEventArgs e)
|
|
{
|
|
foreach (CronJob job in cron_jobs)
|
|
job.execute(DateTime.Now);
|
|
}
|
|
}
|
|
}
|