C#タスクスケジューリングライブラリをお勧めします[閉じました]
-
21-08-2019 - |
質問
私は、柔軟性のかなりの量で私にスケジュールタスクをできるようになること、好ましくは、オープンソース、C#のライブラリを探しています。具体的には、私は時間のすべてのN単位を実行するだけでなく、「XXXX時の平日」または「XXXX時毎週月曜日」事をスケジュールすることができるはずです。それよりも多くの機能は素晴らしいが、必ずしも必要ではないだろう。これは、私はすぐに、「クロン」「時」のWindowsスケジュールされたタスクを、除外、およびインストールおよび/または操作するためのGUIを必要とする任意のサードパーティ製アプリAzureのWorkerRoleに使いたいものです。私は、ライブラリを探しています。
解決
http://quartznet.sourceforge.net/する
"Quartz.NETは非常にpropular(原文のまま!)、オープンソースのJavaジョブスケジューリングフレームワーク、クォーツのポートです。"
PS:賢明にWordが、ちょうどその時仕事でquartz.netに移動しようとしない; - )
他のヒント
私は私のJavaの時代に戻っクォーツを使用し、それがとてもうまくいきました。私は今、いくつかのネットの仕事のためにそれを使用していますが、それは(それがstabalizedたとのための当然の年の数がそこにあります)でも良い作品。だから私は確か秒それについての勧告ます。
私はちょうどでプレイし始めていることを、見なければならないもう一つの興味深い点は、.NET 4.0の新しいSystem.Threading.Tasksです。私は仕事を並列のタスクを使用してきた、それは、マルチコア/プロセッサの大きな利点になります。私は詳細にそれを見ていないが、それはなどQueueTask、DeQueTask、のような方法は、少なくともいくつかの調査価値があるかもしれません持っています。
、TaskSchedulerという名前そこにクラスがあることに気づきましたCodeProjectの上の.NET の新しいタスクスケジューラクラスライブラリを参照してください。
私はクォーツに、この問題の<のhref = "https://stackoverflow.com/について読みます質問/ 503564 / C-サービス - 実行 - 毎日 - タスク ">どのように私は、毎日のタスクを実行するためにC#のWindowsサービスをスケジュールするのでしょうか?に。これは、C#ライブラリだと柔軟なスケジューリングが可能になります。
クォーツは素晴らしい解決策のように思えます。
私は最近(今年)私が働いていた主要なプロジェクトにカスタムタスクスケジューラを書くために持っていました。彼らはあまりにもWindowsのタスクスケジューラを使用し、また、(ASP.netのWebサイトを経由して)アセンブリをアップロードのおかげでカスタム機能を実行する能力を望んでいたし、サービスが指定した時刻に適切なタスクを実行していない可能性があります。
の事は悪夢のビット(それほどではないが、設計および実装が、スケジューリングロジックは、ドラッグのビットだったために)正直だった。
私は非常に(a.k.a車輪の再発明!)「独自のロール」を決定する前に、他のすべての道を排出お勧めします。
アディティ・テクノロジーズに呼ば<のhref = "HTTP rel="nofollow">のスケジューラの
スケジューラは、開発者が通過タスクの実行をスケジュールすることができます 単純または複雑なCRONスケジュールで実行されるHTTPウェブフックます。