La question découle d'une confusion autour du concept de goroutines dans Golang. La trace de la pile de crash fournie soulève la question de savoir si la fonction main() fonctionne comme une goroutine.
Cependant, la réponse est claire : non, la fonction main() n'est pas une goroutine. C'est une fonction. Une goroutine, en revanche, est un fil d'exécution léger qui englobe des fonctions.
Pour clarifier davantage, la fonction main() est exécutée dans la première goroutine (numéro 1) lors du démarrage du programme. Néanmoins, lorsque main() appelle une fonction ultérieure, la goroutine d'origine n'exécute plus la fonction main() mais passe à la fonction nouvellement invoquée.
Par conséquent, il est évident que les goroutines et les fonctions sont des entités distinctes. Les assimiler peut entraîner des idées fausses et des complications importantes. N'oubliez pas que les fonctions et les goroutines sont des concepts distincts qui ne doivent pas être confondus.
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!