Estoy probando mis manos en las características g++ 4.6
y C++11
. Cada vez que compilo un código de subprocesamiento simple usando el indicador -std=c++0x
, o bien se bloquea con un error de segmentación o simplemente arroja alguna excepción extraña.En g ++ es el modelo de hilo C++ 11 utilizando pthreads en el fondo?
He leído algunas preguntas relacionadas con los hilos C++11
y me di cuenta de que, también necesito usar el indicador -pthread
para compilar el código correctamente. Usar -pthread
funcionó bien y pude ejecutar el código enhebrado.
Mi pregunta es si el modelo C++11
multi-threading utiliza Pthreads
en el fondo? ¿O está escrito desde cero?
No sé si alguno de los miembros es gcc
contribuyentes pero solo tengo curiosidad.
@Kay Parece que la pregunta es sobre g ++ 4.6. – juanchopanza
La "excepción extraña" probablemente sea 'std :: system_error', requerida por el estándar cuando no se pueden crear subprocesos (por ejemplo, porque no se ha vinculado a libpthread.so con' -pthread'). Estoy trabajando para mejorar el mensaje que da la excepción, ver http://gcc.gnu.org/PR52681 –
@JonathanWakely .... Sí, esta es la excepción que estoy tratando en mi máquina Linux ... con AMD Turion X2 .... Aunque funcionó bien sin la bandera '-pthread' en mi compañero de habitación de la máquina Intel ... – Recker