1

私のアプリケーションには、サーバーからの構成の更新を数分間隔でチェックするタイマーがあります。

構成の取得はかなり時間のかかるプロセスなので、タイマーの「Tick」イベントを強制したいのですが、timer_tick(bla、bla、bla)は同期的に実行されるため、単に呼び出すことはできません。

(新しいスレッドを作成せずに)タイマーを強制的に「ティック」にする簡単な方法はありますか?動作は、タイマーの残り時間を「リセット」する必要があります(したがって、元々タイマーが2分間隔に設定されていて、すでに1分過ぎている場合、「ティック」を強制した後、タイマーは再び2分をカウントし始めます)

4

2 に答える 2

2

タイムアウト値を変更します。

于 2010-05-06T07:50:35.570 に答える
0

消費プロセス内での最初のステップはタイマーを無効にすることであり、最後のステップはタイマーを再度有効にすることです。

たぶん、このディスを置いて、次のように長時間実行されているプロセスを呼び出す直前と直後に有効にします。

timer.Enabled = false;
LongRunningSyncProcess();
timer.Enabled = true;
于 2010-05-06T07:59:21.200 に答える