Maison > Article > développement back-end > Pourquoi mon code multithread renvoie-t-il toujours \'std::system_error\' même avec \'-pthread\' ?
Compilation de code multithread avec g : 'std::system_error' résolue
Rencontre de l'erreur 'std::system_error' lors de la compilation de code multithread avec g peut être frustrant. Malgré la spécification explicite de l'indicateur « -pthread », le problème persiste.
En examinant le code fourni, il ne semble y avoir aucun problème apparent. Cependant, le problème vient d'un bug dans gcc. La solution de contournement fournie par un membre du chat SO C propose une solution :
-Wl,--no-as-needed
Lorsqu'il est ajouté à la commande de compilation, cet indicateur résout le problème, permettant au code multithread de se compiler et de s'exécuter avec succès. La commande de compilation mise à jour serait :
$ g++ main.cpp -o main.out -pthread -std=c++11 -Wl,--no-as-needed
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!