Avatar
omochimetaru 7/20/2017 2:41 PM
んー・・・? ↑のコードなら、 a[2] = 4var b = a の2行を、ユーザがロックすべきだと思う。
2:42 PM
b = a の代入の最中に、 a[2] = 4 の処理が走り始めて内部状態が壊れる可能性があるはず。
2:42 PM
じゃあstd::stringの話も一緒か。
2:43 PM
C++11で a[2] = 4 が書き込み操作で、 b = a の右辺はreadだから、競合してるのでロックが要るって事になるはず (edited)