Ich versuche gerade meine Hände auf g++ 4.6
und C++11
Funktionen. Jedes Mal, wenn ich einen einfachen Threading-Code mit -std=c++0x
Flag kompilieren, stürzt es entweder mit Segmentierung Fehler oder es wirft nur einige seltsame Ausnahme.In g ++ ist C++ 11 Thread-Modell mit Pthreads im Hintergrund?
Ich lese einige Fragen zu C++11
Themen und ich erkannte, dass ich auch -pthread
Flag verwenden müssen, um den Code richtig zu kompilieren. Mit -pthread
funktionierte gut und ich konnte den Thread-Code ausführen.
Meine Frage ist, ob das C++11
Multithreading-Modell Pthreads
im Hintergrund verwendet? Oder ist es von Grund auf neu geschrieben?
Ich weiß nicht, ob einige der Mitglieder sind gcc
Mitwirkende, aber ich bin nur neugierig.
@Kay es sieht aus wie die Frage ist über g ++ 4.6. – juanchopanza
Die "einige seltsame Ausnahme" ist wahrscheinlich "std :: system_error", die vom Standard benötigt wird, wenn keine Threads erstellt werden können (z. B. weil Sie nicht mit "-pthread" mit libpthread.so verbunden haben). Ich arbeite an der Verbesserung der Nachricht, die Ausnahme gibt, siehe http://gcc.gnu.org/PR52681 –
@ JonathanWakely .... Ja, das ist die Ausnahme, die ich auf meiner Linux-Maschine ... mit AMD beschäftigen Turion X2 .... Während es ohne "-thread" -Flag auf meinen Mitbewohners Intel-Maschine glatt ging ... – Recker