2009-08-17 6 views
1

私はJavaからC#にアプリケーションを移植していますが、java.util.TimerSystem.Threading.Timerの間のさまざまな動作と機能に関連する問題に直面しています。 実際には、TimerクラスのJavaバージョンには、タスクをスケジューリングするための機能(元のコードで使用されています)があります。これは.NETバージョンには存在しません。一度に。Timerクラスをjavaからc#に変換する:スケジューリングタスク

解決策はありますか、機能を実装するための小さなクラスセットですか?

私はいくつかのスケジューリングライブラリ(例としてQuartz)があることに気付きましたが、私は使用するコードの量を最小限に抑えるソリューションを望んでいます。

ありがとうございました! :)

答えて

1

どのタイマークラスでも使用できます。各スケジュールされたタスク、新しいTimerクラスを作成し、ちょうど間隔プロパティを設定しへ(ScheduledTime - DateTime.Now)については.TotalMillisecondsと偽(またはfalseにEnabeldプロパティにAUTORESETプロパティを設定しますTickイベントのコードビハインド)。これは指定されたScheduledTimeでコードを一度実行します。

+0

時々私はStackOverflowに質問します。実際には友人に実際にそれをやってくれるようになります。実際、ここに書いた後、数分後に私がここで説明したものと同様の解決策を詳述しました。 – Antonello

1

.NETには少なくとも4つのタイマーがあります。あなたの短い答え:using System.Threading.Timer。私はここでタイマhereについて読んで、特定の時間にイベントをディスパッチできるSystem.Windows.Threading.DispatchTimer(WPFの一部)を調べるだけでなく、UIスレッドでイベントをディスパッチすることをお勧めします。

関連する問題