定时器,每3秒运行2次c#

本文关键字:2次 运行 3秒 定时器 | 更新日期: 2023-09-27 18:04:15

有没有办法每两到三秒运行一个程序?我知道你可以让计时器每n毫秒运行一次,但不是每n/m秒运行一次。对于一个非常基本的例子,假设我想有两个函数,它们都对一个整数值进行相加。一个函数将每三秒运行两次,并将5加到某个值上。第二个函数将为相同的值加100,但只运行第一个函数没有运行的那一秒钟。这有道理吗?

定时器,每3秒运行2次c#

最简单的方法是保留你在哪一秒的内部表示,并根据它切换到不同的执行。

private int counter = 0;
private int whichSecond = 0;
void RunsEverySecond()
{
    if (whichSecond < 2)
    {
        counter += 5;
        whichSecond++;
    }
    else
    {
        counter += 100;
        whichSecond = 0;
    }
}