1

我不明白为什么这段代码在 4 小时过去后无法测量。

    if (guildVaultRunStarter.IsRunning)
    {
        if (guildVaultRunTimer.ElapsedMilliseconds > 4 * 60 * 60 * 1000) // 4 hours
        {
            guildVaultRunStarter.Reset();
            log("Its been over 4 hours - empty bags.");
            return true;
        }
        else
        {
            log("guildVaultRunTimer.ElapsedMilliseconds = " +
                guildVaultRunTimer.ElapsedMilliseconds.ToString() + ".");
        }
    }
    else
    {
        log("Start the 4 hour guild vault countdown.");
        guildVaultRunStarter.Reset();
        guildVaultRunStarter.Start();
    }

日志显示:

[8/23/2009 12:17:21 PM]:Start the 4 hour guild vault countdown.
...
[8/23/2009 12:26:53 PM]:guildVaultRunTimer.ElapsedMilliseconds = 0.
...
[8/23/2009 12:27:26 PM]:guildVaultRunTimer.ElapsedMilliseconds = 0.

为什么总是0?

4

2 回答 2

5

它只是和之间的错字guildVaultRunTimerguildVaultRunStarter

IE

if (guildVaultRunStarter.ElapsedMilliseconds > ...

guildVaultRunTimer毕竟,你似乎永远不会开始。

于 2009-08-23T09:45:43.200 回答
0

您在哪里实例化计时器以及在哪里/如何调用这段代码?

于 2009-08-23T09:43:08.227 回答