0

我有这个功能...

Instance(uint InstanceId) { }

里面是这段代码...

        mUpdater = new Timer(new TimerCallback(PerformUpdate), null, TimeSpan.FromMilliseconds(500), TimeSpan.FromMilliseconds(500));

它每 500 毫秒刷新一次 PerformUpdate

在 PerformUpdate 中,我有一个 IF 语句来计算用户是否定义了特定变量。如果用户有变量,我将如何做到这一点,那么它只会每 300 毫秒而不是 500 毫秒刷新一次。

哦,它不能在 Instance 函数中设置,因为它是每个用户的命令,而 Instance 适用于每个用户。

帮助将不胜感激!

4

1 回答 1

2

这看起来像它的System.Threading.Timer,不是System.Timers.Timer,正确的?您可以Change在 a 上调​​用该方法System.Threading.Timer来更改其开始时间和间隔。

var variableDefined = true;        
var threadingCallback = new System.Threading.TimerCallback((o) => { });
var threadingTimer = new System.Threading.Timer(threadingCallback, null, 0, 500);
if (variableDefined) {
    threadingTimer.Change(0, 300);
}
于 2013-02-20T14:32:40.773 回答