タグ

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

  • スレッドセーフにするために考えること 〜基礎編〜 - かとじゅんの技術日誌

    ええっと、リクエストされたので、今回は並行処理ネタにいってみます。 並行処理といえば、このは必読書ですね。でも、書いてることは、かなりムズカシイデス(´・ω・`) Java並行処理プログラミング ―その「基盤」と「最新API」を究める― 作者: Brian Goetz,Joshua Bloch,Doug Lea出版社/メーカー: ソフトバンククリエイティブ発売日: 2006/11/22メディア: 単行購入: 24人 クリック: 419回この商品を含むブログ (163件) を見る ということで、並行処理について、もうちょっと優しく分かりやすく解説できないか考えて書いてみます。 スレッドセーフにするには 今回は、プログラムをスレッドセーフにするためにどんなことを考えればよいか。そういうテーマです。 アンスレッドセーフなコードから このの最初の方に、"スレッドのリスク"という章で、スレッド

    スレッドセーフにするために考えること 〜基礎編〜 - かとじゅんの技術日誌
  • マルチスレッドとメモリ同期 - primitive: blog

    今回はマルチスレッドプログラミングでの厄介な問題、メモリ同期について。 要するにきちんと排他制御しろという当たり前の話なんだけど、何故きちんと排他制御しないといけないのかまで深く説明してるのはあまり見ない気がします。 例 例えばこんなコードで bool g_complete = false; int g_message[100]; void foo(int i) { g_message[i/10] = 42; g_complete = true; } void bar() { while(!g_complete) { // foo() が終わるまで busy loop して待つつもり } printf("%d\n", g_message[0]); } マルチスレッドでワーカースレッドが foo() を呼び、メインスレッドが bar() で仕事が終わるのを待って結果を表示する、ということをや

    マルチスレッドとメモリ同期 - primitive: blog
  • 1