using System; namespace SepCore.Timer { /// /// 定时任务描述。 /// public struct TimerTask { public TimerTask(float delay, float interval, int repeatCount, Action callback, object owner = null, TimerTimeMode timeMode = TimerTimeMode.Scaled) { Delay = delay; Interval = interval; RepeatCount = repeatCount; Callback = callback; Owner = owner; TimeMode = timeMode; } /// /// 获取或设置首次触发前的延迟时间(秒)。 /// public float Delay { get; set; } /// /// 获取或设置循环触发间隔(秒)。一次性任务会忽略该值。 /// public float Interval { get; set; } /// /// 获取或设置触发次数。1 表示一次性,负数表示无限循环,0 表示不创建任务。 /// public int RepeatCount { get; set; } /// /// 获取或设置任务回调。 /// public Action Callback { get; set; } /// /// 获取或设置任务归属对象,用于批量取消。 /// public object Owner { get; set; } /// /// 获取或设置任务时间源。 /// public TimerTimeMode TimeMode { get; set; } } }