Maison > développement back-end > Golang > Go : Quel est le but d'une instruction « select » vide ?

Go : Quel est le but d'une instruction « select » vide ?

Susan Sarandon
Libérer: 2024-12-01 02:58:10
original
580 Les gens l'ont consulté

Go: What is the Purpose of an Empty `select` Statement?

Go : Objectif des instructions de sélection vides

Question :

Dans le réseau/http /httptest package, j'ai rencontré le code suivant :

s.Config.Serve(s.Listener)
if *serve != "" {
  fmt.Fprintln(os.Stderr, "httptest: serving on", s.URL)
  select {}
}
Copier après la connexion

Quel est le rôle de la sélection vide déclaration dans ce code ?

Réponse :

Une instruction select vide, comme select {}, fonctionne comme un mécanisme de blocage, similaire à une instruction for vide (pour { }). Il suspend l'exécution du programme indéfiniment, ce qui laisse le temps à d'autres processus de se produire.

Dans la plupart des architectures Go prises en charge, l'instruction select vide libère des ressources de processeur, contrairement à l'instruction for vide, qui peut entraîner une utilisation continue du processeur. Par conséquent, la sélection {} est souvent préférée lorsque des périodes d'attente prolongées sont nécessaires.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal