タグ

マルチスレッドに関するfantatchiのブックマーク (2)

  • .NETマルチスレッドプログラミング 1:スレッドの実行と同期

    目次 はじめに 対象読者 必要な環境 新しいスレッドを作成し、実行する フォアグラウンドスレッドとバックグラウンドスレッド スレッドが終了するまで待機する スレッドの同期 競合状態 Monitor.Enter・Monitor.Exitメソッド lock・SyncLockステートメント 静的メソッドの同期 ロック専用のオブジェクト MethodImplOptions.Synchronized デッドロック まとめ 参考資料 はじめに 稿では、.NET Frameworkにおけるマルチスレッドプログラミングについて、次のような方針で解説します。また、稿は四部作の「パート1」です。 マルチスレッドプログラミングの基事項を、全般的に紹介します。ただし、説明は簡潔に要点のみを押さえ、深い部分までは掘り下げません。より詳しい内容を知りたい方は、記事内に示すリンク先や、末尾の「参考資料」を参照して

    .NETマルチスレッドプログラミング 1:スレッドの実行と同期
  • マルチスレッド (C# によるプログラミング入門) - ++C++; // 未確認飛行 C++

    概要 .NET Framework では、マルチスレッドプログラムを作成するためのクラスライブラリを提供しています。 C# でマルチスレッドプログラムを作成する場合、これらライブラリ中のクラスを用いて行うことになります。 また、C# ではスレッド間の同期を取るために lock 文という構文を用意しています。 ポイント C# なら、Thread クラスとデリゲートで並行処理・並列処理もお手軽。 実際には、スレッドを直接作らず、スレッド プールというものを介して使う。 .NET Framework 4 以降なら、Task クラスを利用。 排他処理は lock 文で。 マルチスレッドとは まず、スレッドに関して簡単に説明しておきます。 簡単に言うと、スレッド(thread: 糸、筋道)とは一連の処理の流れのことを言います。 図1 に示すように、 処理の流れが一道な物をシングルスレッド、 複数の

    マルチスレッド (C# によるプログラミング入門) - ++C++; // 未確認飛行 C++
  • 1