0

我们正在建立一个可以处理每日/每周/每月/每季度作业运行的服务。我们面临的问题是关于季度工作的。我们刚刚发现,在运行我们的工作时,它Timer()在我们的代码中的这一点上失败了:

_tmr = new System.Timers.Timer(lapsed);

var lapsedlapsed 最终超过 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)的区间值

我的问题:

我试图想办法模拟这个季度的“工作服务”功能,同时解决这个毫秒间隔限制。

例如,也许我可以将作业标记为“每月”,但逻辑将每周检查作业 - 只有当我们到达下一个季度时才执行实际的作业对象。

我对此有点坚持,因此非常感谢任何指导和/或建议....

4

0 回答 0