Détection du débogueur Delve dans les programmes Go
Dans certains cas, il peut être avantageux de déterminer si un programme Go s'exécute sous le débogueur GoLand . En C#, la propriété System.Diagnostics.Debugger.IsAttached fournit cette fonctionnalité.
Y a-t-il un équivalent dans Go ?
Non, il n'y a actuellement aucun élément intégré méthode dans Go pour détecter la présence du débogueur comme en C#.
Solution de contournement à l'aide de Build Balises
Cependant, une solution de contournement est possible en utilisant les balises de build. En définissant une balise de build lorsque le débogueur Delve est en cours d'exécution, vous pouvez vérifier sa présence dans votre code.
Créez deux fichiers :
Dans a.go, ajoutez :
import ( "isdelve" "fmt" ) func main() { fmt.Println("delve", isdelve.Enabled) }
Maintenant, vous pouvez vérifier si le le débogueur Delve est en cours d'exécution :
À l'aide de la commande set de Delve
Comme alternative, Delve propose la commande set pour définir manuellement une variable après le démarrage du débogueur.
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!