バッチ業務を行うために書いたサービスがありますが、午後4時に処理を開始し、午前5時に処理を終了する必要があります。まだ処理中のジョブがある場合は、ジョブが終了するまで時間を延長する必要があります。スケジュールでWindowsサービスを開始および停止する方法はありますか?
私はタイマーなどでオンスタートコールをラップしますか?無限になるまで(またはボックスタンクや処理されない例外が満たされるまで)、サービスを開始して実行するのに慣れているので、これがどうなるかわかりません。
これを達成する方法については、私は確かに感謝しています。
編集:SSISパッケージをC#でdtexec()とバッチファイルで実行しているため、サービスが必要です。 dbaseとキュー管理にロギングするようなものもあります。
各ジョブの時間の長さは変わります。数分間で完了するジョブもあれば、5時間かかるジョブもあります。
なぜサービスを停止するのではなく、サービスを停止したいのですか? –
2つ目のプロセスが最初のプロセスに依存している場合、最初のプロセスが完了するまで2番目のプロセスを実行しようとしても意味がありません.. 2つのプロセスが完全に独立していて、テーブルの更新、挿入、削除など...それは完全に終了するまで最初のプロセスを実行する必要があるように聞こえます。 – MethodMan
サービスは必要ありません。タスクをスケジュールするだけです。それは完了するまで実行されます –