http://sunsite.ualberta.ca/Documentation/Gnu/libstdc++-2.90.8/html/configopts.htmlというオプションがそこに説明されていますが、stlはスレッドセーフであり、デフォルトではそうですか?gcc/g ++/libstdC++のコンパイル時に--enable-threads = LIBとは何を意味しますか?
答えて
素晴らしいマニュアルを読んで、公式のGCCウェブサイトで最新版を読んでください。古代版を参照している文書の12年前のコピーではありません! --enable-threads
の現在のドキュメントはhttp://gcc.gnu.org/install/configure.htmlであるとのlibstdC++がスレッドセーフであるかどうかを説明する文書がhttp://gcc.gnu.org/onlinedocs/libstdc++/manual/using_concurrency.html#manual.intro.using.concurrency.thread_safety
であるあなたは、SOに尋ねると、あなたは誰が人から回答を得ることを望んより公式ドキュメントを参照してより良い答えを得るでしょう実際に彼らが話していることを知っている。
1)あなたが尋ねるオプションはGCCにのみ影響するので、明らかにGCCの標準ライブラリに影響します。一般的にstlのスレッドの安全性については何も言及していません。で説明したように)http://www.sgi.com/tech/stl/thread_safety.html
3:
2)ほとんどのC++ 03 GCCのを含め、ライブラリの実装()およびすべてのC++ 11のライブラリの実装では、STLのSGI実装によって使用されるスレッドの安全性の定義に従ってくださいGCCの標準ライブラリは、複数のスレッドからオブジェクトにアクセスしないという単純なルールに従えば、それには影響しません。--enable-threads
それが影響を与えるのは、内部mutexを実装し、libstdC++によって内部的に必要とされる機能を実装するために使用される基礎となるマルチスレッドAPIです(上記のコメントに記載されています)。のみサポートされているオプションは--enable-threads=single
(--disable-threads
に相当)または(例えばPOSIXプラットフォーム--enable-threads=posix
に、Windowsの--enable-threads=win32
上)ネイティブスレッドモデルとなりますので、あなたはおそらくないだけでGCCを聞かせて、そのオプションを使用したいんほぼすべてのプラットフォームでプラットフォームのデフォルト値を選択します。
- 1. ライブラリのインストール時に-develとは何を意味しますか?
- 2. コンパイル時の抽象化の意味は何ですか?
- 3. [Function:bound]はノードのデバッグ時に何を意味しますか?
- 4. exeが動的にコンパイルされることは何を意味しますか?
- 5. 割り当て時に&&は何を意味しますか? JAVA
- 6. NSDateComponentsの時代は何を意味していますか?
- 7. HadoopジョブのCPU時間は何を意味しますか?
- 8. ROSBAGの持続時間は何を意味しますか?
- 9. 意味論は何を意味しますか?
- 10. IndexOutofRangeExceptionは何を意味しますか?
- 11. CSSセレクタの開始時に「..」とは何を意味しますか?
- 12. JOB_INFO_2で時間メンバーは何を意味しますか?
- 13. ^は何を意味しますか?
- 14. バックスラッシュは何を意味しますか?
- 15. エラーメッセージは何を意味しますか?
- 16. .html()は何を意味しますか?
- 17. 「ネットワークパフォーマンス」は何を意味しますか?
- 18. !viは何を意味しますか?
- 19. force_reloadは何を意味しますか?
- 20. フラットは何を意味しますか?
- 21. UnmappableCharacterExceptionは何を意味しますか?
- 22. (+ var)は何を意味しますか
- 23. Failed_Reason_Other_Than_A_Connection_Already_Existsは何を意味しますか?
- 24. グローバルステップは何を意味しますか?
- 25. new()は何を意味しますか?
- 26. "="は何を意味しますか
- 27. getActivity()は何を意味しますか?
- 28. {login}は何を意味しますか
- 29. *は何を意味しますか?
- 30. コンパイラは何を意味しますか?
リンクのテキストを読むと、スレッドの安全性とは関係ありませんが、基礎となるスレッドシステムを使用する必要があります。 –
上記のように、私はそれだけでよく、標準オブジェクトはマルチリード、シングルライトであると仮定します。マルチスレッドがいくつかのstd :: mutexを設定している場合。 – 111111