[過去ログ]
マルチスレッドプログラミング相談室 その8 (1001レス)
マルチスレッドプログラミング相談室 その8 http://peace.5ch.net/test/read.cgi/tech/1253521167/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
678: デフォルトの名無しさん [sage] 2011/09/15(木) 12:18:55.76 C# よく分かんないけど、変数をまとめたクラス class Vars { int a, b, c, ...; static Vars instance; } があって、更新側 Vars v = new Vars(); v.a = aaa; // 1 v.b = bbb; // 2 v.c = ccc; // 3 ... Vars.instance = v; // 4 これで 1 〜 3 の順番が入れ替わるのは許せるけど、 1 〜 3 と 4 の順番が入れ替わるのってありなの? まじ??? http://peace.5ch.net/test/read.cgi/tech/1253521167/678
679: 678 [sage] 2011/09/15(木) 12:21:02.84 続き。volatile の必要性については、参照側 int prevA = 0; while (true) { Vars v = Vars.instance; if (v.a != prevA) { doSomething(v); prevA = v.a; } } とすると、参照側の Vars.instance のアクセスがキャッシュされるから、 Vars.instance は volatile じゃないと駄目ってことでしょ。 Vars.instance を直接アクセスせずに getter を介してれば volatile は不要、かな? http://peace.5ch.net/test/read.cgi/tech/1253521167/679
681: デフォルトの名無しさん [sage] 2011/09/15(木) 12:34:46.76 >>678 ECMAのメモリモデルではあり得るが、 CLR2のメモリモデルでは起こらない。 http://peace.5ch.net/test/read.cgi/tech/1253521167/681
699: デフォルトの名無しさん [sage] 2011/09/20(火) 00:11:35.17 結局、>>678の質問の答えはどうなん? CLRの仕様から答えは決まるのか、 それともC#も仕様で決まるのか? http://peace.5ch.net/test/read.cgi/tech/1253521167/699
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.193s*