Próbuję tylko użyć funkcji g++ 4.6
i C++11
. Za każdym razem, gdy kompiluję prosty kod wątku przy użyciu flagi -std=c++0x
, albo ulega awarii z błędem segmentacji, albo po prostu wyrzuca jakiś dziwny wyjątek.W g ++ jest wątek C++ 11 za pomocą pthreads w tle?
Przeczytałem kilka pytań związanych z wątkami C++11
i zdałem sobie sprawę, że muszę również użyć flagi -pthread
, aby poprawnie skompilować kod. Korzystanie z -pthread
działało dobrze i mogłem uruchomić kod z gwintem.
Moje pytanie brzmi, czy wielowątkowy model C++11
używa Pthreads
w tle? Czy jest napisane od zera?
Nie wiem, czy któryś z członków to gcc
współpracowników, ale jestem po prostu ciekawy.
@ Wygląda na to, że pytanie dotyczy g ++ 4.6. – juanchopanza
"Niektóre dziwne wyjątki" to prawdopodobnie 'std :: system_error', wymagane przez standard, gdy wątków nie można utworzyć (np. Ponieważ nie masz połączenia z libpthread.so z' -pthread'). Pracuję nad poprawą komunikatu, który daje wyjątek, zobacz http://gc.gnu.org/PR52681 –
@ JonathanWakely .... Tak, to jest wyjątek, z którym mam do czynienia na moim komputerze z Linuksem ... z AMD Turion X2 .... Podczas gdy wszystko poszło gładko bez flagi '-pthread' na mojej maszynie współlokatorów Intel ... – Recker