2017-01-11 3 views
1

ここでは、原子のstdのドキュメント::です変数の周りにミューテックスを使用してください。C++アトミック変数とは何ですか?私はそれが特別な機械語命令(すなわちロックアドオン)のいくつかの並べ替えを生成し、それが結果として、あなたがする必要はありませんで収集したものを他の質問を読んで<a href="http://en.cppreference.com/w/cpp/atomic/atomic" rel="nofollow noreferrer">http://en.cppreference.com/w/cpp/atomic/atomic</a></p> <p>:

私が知りたいのは、どのように動作するのか、それを使用する上での制限は何ですか?

+1

あなたの回答は本当に長くなるでしょう。良いスタートは、ロックフリーが意味することを勉強することです。そこから、29 Atomic operations libraries [atomics]で始まるC++標準を読み始めることができます。そこには多くのダイジェストがあります。 – AndyG

+0

特別な機械命令を生成する以上のことをします。また、ロード/ストアの並べ替えを防止します。下の回答のビデオへのリンクは本当に守られなければなりません。あなたが学んだことに驚くでしょう。 2時間が必要です。 –

+0

ありがとうございます。私はビデオを見ます。私はそれがとても複雑であることを気づかなかった。 – tylerjw

答えて

1

このトピックは本当に本を満たすことができます。おそらく、この形式ではっきりとした答えが得られないでしょう。

これらは本当に私が話題に見てきた明確な議論されている、ハーブSuttersのビデオをチェックアウト:

https://herbsutter.com/2013/02/11/atomic-weapons-the-c-memory-model-and-modern-hardware/

は、「パート1」と「パート2」のリンクを参照してください。

関連する問題

 関連する問題