-1

次の問題 (C#) に対する適切な設計を探しています。返信ありがとうございます。

  • マルチスレッドプログラム
  • 少なくとも 2 つのスレッド
  • 最初のスレッドは常に実行されています
  • 2 番目のスレッドは、平日の午前 9 時から午後 5 時まで実行する必要があり、それ以外の場合は一時停止します

これまでに試したことと私の考え:

  • 2 スレッドのままにします。特定の時間に実行/一時停止する必要があるものについては、Thread.Sleep を使用します。問題: Thread.Sleep がスレッドをまったく一時停止していないようです。スレッドは、Thread.Sleep が存在しないかのように実行を続けます。理由がわかりません(コメント歓迎)。Thread.Sleep の代わりにループを使用している場合、ループが長時間 (一晩中など) 放置されていると、スレッドは起動しません。

  • タイマーを使用して 3 番目のスレッドを追加します。この 3 番目のスレッドは、2 番目のスレッドの実行/一時停止を呼び出します。

  • より良いアイデア???

4

1 に答える 1