私は多くの優れた.NETスケジューリングエンジンを見つけました。特にQuartz.Netは非常に有望に見えます。ただし、日付と時刻だけでなく、思いついたものすべてからトリガーできるスケジューリングエンジンが必要です。たとえば、日付/時刻ベースのトリガーに加えて、プロセスが開始されたとき、コンピューターがロックされたとき、WMIイベントがオフになっているときなどにトリガーしたい場合があります。
私が探しているのは、適切なインターフェイスを実装し、条件が満たされたときにトリガーを起動できるようにするソリューションです。このようなものはすでに存在しますか、それとも私自身ですか?
これが私が見たカップルです:
- データベースで「定期的なイベント」を表す最良の方法は何ですか?
- c#定期的なイベント(カレンダーなど)
- C#タスクスケジューリングライブラリを推奨する
- C#スケジューラの書き方
- http://www.codeproject.com/Articles/2478/C-Scheduler
- http://www.codeproject.com/Articles/2407/A-New-Task-Scheduler-Class-Library-for-NET
- http://www.codeproject.com/Articles/8424/A-component-for-event-scheduling-inside-an-applica
- http://blog.bobcravens.com/2009/10/an-event-based-cron-scheduled-job-in-c/
- http://www.codeproject.com/Articles/6507/NET-Scheduled-Timer
これは、私の.NETアプリケーション内で実行する必要があります。このタイプのトリガーをサポートするようにQuartz.Netを変更することを検討しましたが、日付/時刻トリガーの概念は根付いています。ジョブとトリガーをデータベースに保存する必要がないため、独自のスケジューラーを作成する方がおそらく簡単です。
キュー、優先度、スレッドプールなどの詳細を実装することを心配する必要がないように、既存のスケジューリングシステムを使用したいのですが、もちろん、必要なことは実行します。 。