激活功能作为一个特定的小时,然后睡X时间
本文关键字:小时 然后 时间 一个 功能 激活 | 更新日期: 2023-09-27 18:11:01
对不起,我对c#有点陌生:)
我尝试完成的是类似的东西,我从控制台有2个输入参数它们被称为
smallHourbigHour
我们设smallHour = 2 and bigHour = 12,
现在我想做的是每2小时激活一个功能,也每12小时,总是在00分整小时。但是当bigHour被激活时,smallHour不应该运行。
你们有什么好主意吗?他们激活的功能是一种"奖励"功能,因此为什么当bigHour事件发生时,它需要阻塞到smallHour -所以他们不会得到2倍的奖励。
提前致谢
。. NET有一个类叫做System.Threading.Timer.
我更喜欢使用的一个构造函数是:
public Timer(
TimerCallback callback,
Object state,
long dueTime,
long period
)
当dueTime
毫秒已经过时,. net将以state
作为参数调用委托callback
。您的回调实现可以使用DateTime.Now
来决定调用哪个函数。period
决定连续呼叫之间的延迟。
小心使用,计时器回调将从线程池线程调用。您可能需要使用锁来保护数据结构免受并发修改。