Maison > Article > développement back-end > Comment puis-je détecter si le débogueur GoLand est connecté à un programme Go ?
Dans Go, contrairement à C# où System.Diagnostics.Debugger.IsAttached peut être utilisé pour détecter la présence du débogueur, il existe pas d'équivalent direct. Pour résoudre ce problème, une approche consiste à exploiter les balises de build avec le débogueur Delve.
Créez deux fichiers :
// +build delve package isdelve const Enabled = true
// +build !delve package isdelve const Enabled = false
Dans votre programme principal, importez le package isdelve et vérifiez le Constante activée :
import "isdelve" func main() { fmt.Println("delve", isdelve.Enabled) }
Dans GoLand, accédez à « Configurations d'exécution/débogage » et dans « Arguments de l'outil Go », ajoutez :
-tags=delve
Maintenant, l'exécution du programme dans GoLand activera la balise delve build, vous permettant d'accéder au isdelve.Enabled constante.
Vous pouvez également utiliser la commande set de Delve pour définir une variable après le démarrage du débogueur :
dlv debug a.go (dlv) set debug.enabled true
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!