Delve-Debugger-Erkennung in Go-Programmen
In manchen Fällen kann es von Vorteil sein, festzustellen, ob ein Go-Programm unter dem GoLand-Debugger ausgeführt wird . In C# stellt die Eigenschaft System.Diagnostics.Debugger.IsAttached diese Funktionalität bereit.
Gibt es ein Äquivalent in Go?
Nein, es gibt derzeit keine integrierte Funktion Methode in Go, um das Vorhandensein des Debuggers wie in C# zu erkennen.
Problemumgehung mit Build Tags
Eine Problemumgehung ist jedoch mithilfe von Build-Tags möglich. Indem Sie ein Build-Tag festlegen, wenn der Delve-Debugger ausgeführt wird, können Sie prüfen, ob es in Ihrem Code vorhanden ist.
Erstellen Sie zwei Dateien:
Fügen Sie in a.go Folgendes hinzu:
import ( "isdelve" "fmt" ) func main() { fmt.Println("delve", isdelve.Enabled) }
Jetzt können Sie überprüfen, ob der Delve-Debugger läuft:
Delve-Set wird verwendet Befehl
Alternativ bietet delve den Set-Befehl an, um eine Variable nach dem Start des Debuggers manuell zu setzen.
Das obige ist der detaillierte Inhalt vonGibt es eine Möglichkeit, den GoLand-Debugger in Go-Programmen zu erkennen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!