我们正在设置一项服务,可以处理每日/每周/每月/每季度的工作。
我们面临的问题是关于季度工作。我们刚刚发现,在运行我们的工作时,我们的代码中的Timer()
失败了:
_tmr = new System.Timers.Timer(lapsed);
其中var lapsed
已经过去超过7,500,000,000毫秒。
错误是:
Invalid valud 7,500,00,00 for parameter 'interval'
现在我们根据Timer()
定义了解Timer()间隔:
// Parameters:
// interval:
// The time, in milliseconds, between events. The value must be greater than zero
// and less than or equal to System.Int32.MaxValue.
我们意识到我们不能传递大于System.Int32.MaxValue
(或2,147,483,647)的间隔值
我的问题:
我正试图想办法模拟这个季度的“工作服务”功能,同时解决这个毫秒级间隔限制。
例如,也许我可以为“月度”标记作业,但逻辑将每周检查作业 - 并且只有在我们到达下一季度时才执行实际作业对象。
我有点坚持这一点,所以非常感谢任何指导和/或建议......