タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

study > etcに関するkcrvのブックマーク (1)

  • マルチスレッドとメモリ同期 - 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