マルチスレッドプログラミング相談室 その8at TECHマルチスレッドプログラミング相談室 その8 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト234:デフォルトの名無しさん 09/12/23 11:15:37 昔使ったタイマ LSI でラッチ→lo-read→hi-readって いう約束ごとのあるやつがあったな。hi-readでラッチ が外れる奴。word-read 命令が使えるかどうかは CPU 次第。 235:デフォルトの名無しさん 09/12/23 12:47:17 >>226 ハードや操作による。 つーか、まずは「アトミックな操作」という概念をどっかで調べとけ。 例えば、x86のCPUなんかだと、どういう操作がアトミックかはIntelが規定している。 アトミックな書き込みなら、別のコアからの読み込みが割り込む可能性は無い。逆に アトミックでない書き込みなら、例えば半分くらい書き込んだところで別のコアが 読み込む可能性があるということ。 x86なら、厳密な規定はIntelの英語版サイトに落ちてる。32bitアラインドなreadや writeは確実にアトミックだ。相当古いx86以外はキャッシュアラインドなら大丈夫。 read-modify-writeはLOCKプリフィクスが無い限りアトミックではないが、xchg 命令はLOCK#が自動的にアサートされるのでアトミックだ。 まぁ、アセンブラを直接叩くんじゃなければ、イントリンシック命令を調べておけば 十分だが、その裏でどういうCPUの動きをしているかは理解しといた方がいい。 つーか、低水準の話と高水準の話で全然違いすぎるんだよな。俺はどっちの話でも 構わんけど、分けた方がいいのか? 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch