目次 はじめに 対象読者 必要な環境 新しいスレッドを作成し、実行する フォアグラウンドスレッドとバックグラウンドスレッド スレッドが終了するまで待機する スレッドの同期 競合状態 Monitor.Enter・Monitor.Exitメソッド lock・SyncLockステートメント 静的メソッドの同期 ロック専用のオブジェクト MethodImplOptions.Synchronized デッドロック まとめ 参考資料 はじめに 本稿では、.NET Frameworkにおけるマルチスレッドプログラミングについて、次のような方針で解説します。また、本稿は四部作の「パート1」です。 マルチスレッドプログラミングの基本事項を、全般的に紹介します。ただし、説明は簡潔に要点のみを押さえ、深い部分までは掘り下げません。より詳しい内容を知りたい方は、記事内に示すリンク先や、末尾の「参考資料」を参照して
ここでは、Microsoft .NET Frameworkプログラミング(C#、VB.NET、Visual Studioなど)のTip(小技)を紹介しています(逆引き集のようなものです)。ソースコードやサンプルも多数公開しています。 .NET Tipsをご利用いただく際は、注意事項をお守りください。記事の評価一覧は、こちらで閲覧できます。をクリックすると、その記事を別のウィンドウに表示します。このウィンドウはひとつしか表示されませんので、複数の記事を連続してご覧になりたいときに便利です。が付いているリンクは、本来は別のカテゴリに属している記事です。メールマガジン「.NETプログラミング研究」もあります。フォーム(System.Windows.Forms)コントロール(System.Windows.Forms)DataGridコントロール(System.Windows.Forms)DataG
概要 .NET Framework では、マルチスレッドプログラムを作成するためのクラスライブラリを提供しています。 C# でマルチスレッドプログラムを作成する場合、これらライブラリ中のクラスを用いて行うことになります。 また、C# ではスレッド間の同期を取るために lock 文という構文を用意しています。 ポイント C# なら、Thread クラスとデリゲートで並行処理・並列処理もお手軽。 実際には、スレッドを直接作らず、スレッド プールというものを介して使う。 .NET Framework 4 以降なら、Task クラスを利用。 排他処理は lock 文で。 マルチスレッドとは まず、スレッドに関して簡単に説明しておきます。 簡単に言うと、スレッド(thread: 糸、筋道)とは一連の処理の流れのことを言います。 図1 に示すように、 処理の流れが一本道な物をシングルスレッド、 複数の
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く