gpt4 book ai didi

c# - 如果定时器无法在新的循环时间到来之前完成所有工作怎么办?

转载 作者:IT王子 更新时间:2023-10-29 03:52:38 24 4
gpt4 key购买 nike

假设我们有一个每 10 分钟运行一次的计时器。如果其处理周期超过 10 分钟怎么办?是否为此启动一个新线程?会不会打断其目前的运作?如果单个对象在计时器内发生突变怎么办?

抱歉,如果我没有提到任何代码,因为问题很清楚,而且我想从多线程编程极客的角度知道完整的答案,而不是通过尝试通过测试找到一个松散的答案示例应用程序。其实我想知道它的工作机制背后的逻辑。

最佳答案

如果您正在使用 System.Threading.TimerSystem.Timers.Timer,计时器将再次计时,启动一个新线程。参见 https://stackoverflow.com/a/10442117/56778寻找避免该问题的方法。

如果您使用的是 System.Windows.Forms.Timer,则在前一个计时完成处理之前不会出现新的计时。

关于c# - 如果定时器无法在新的循环时间到来之前完成所有工作怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10471315/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com