Planificateur Go : des débuts modestes à une puissance impressionnante
2025-05-21
Cet article explore en profondeur l’évolution du planificateur Go, de son modèle initial inefficace avec une seule file d’attente d’exécution globale au modèle GMP (Goroutine, Machine, Processor) hautement performant. Il détaille les rôles et mécanismes de chaque composant du modèle GMP, notamment la création de goroutines, la préemption, la gestion des appels système et le rôle de netpoll dans les E/S réseau et fichiers. Les mécanismes de préemption coopérative et non coopérative sont expliqués. En décortiquant le code source du runtime Go, les lecteurs acquièrent une compréhension plus approfondie du modèle de concurrence de Go, ce qui leur permet d’écrire des programmes concurrents plus efficaces.
Lire plus
Développement
Planificateur