最終更新:2018-05-22 (火) 21:22:34 (2164d)  

C♯/スレッド
Top / C♯ / スレッド

System.Threading.Thread

  • Thread thread1 = new Thread( new ThreadStart( method ) );
  • 古い

メモ

System.Threading.Tasks.Task

メモ

  • スレッドの終了判定用のフラグ(例:_shouldStop)メンバはワーカーとプライマリスレッドが絡ん称されるので、volatileと宣言
    • boolの操作はアトミックなため
  • 強制終了

バックグラウンドスレッド/フォアグラウンドスレッド

  • プロセス内のすべてのフォアグラウンドスレッドが終了した時に、そのプロセスは終了し、同時にすべてのバックグランドスレッドは強制的に終了させられます。
  • 逆に言えば、すべてのフォアグラウンドスレッドが終了しなければプロセスは終了しませんが、バックグランドスレッドが終了しなくてもプロセスは終了します。

参考

関連