internal void StartTasks()
{
lock ( taskLock ) {
updateTask = Scheduler.NewTask(UpdateTask);
updateTask.RunForever(this,
TimeSpan.FromMilliseconds(ConfigKey.TickInterval.GetInt()),
TimeSpan.Zero);
if (ConfigKey.SaveInterval.GetInt() > 0)
{
saveTask = Scheduler.NewTask(SaveTask);
saveTask.RunForever(this,
TimeSpan.FromSeconds(ConfigKey.SaveInterval.GetInt()),
TimeSpan.FromSeconds(ConfigKey.SaveInterval.GetInt()));
}
if (ConfigKey.BackupInterval.GetInt() > 0)
{
backupTask = Scheduler.NewTask(BackupTask);
TimeSpan interval = TimeSpan.FromMinutes(ConfigKey.BackupInterval.GetInt());
backupTask.RunForever(this,
interval,
(ConfigKey.BackupOnStartup.GetBool() ? TimeSpan.Zero : interval));
}
}
}