C# では、実行中のプログラムは、「System.Diagnostics.Debugger.IsAttached」メソッドを通じてデバッガーの監視下にあるかどうかを識別できます。 .
Go でも同様の機能を実現できますか?これは、コードのデバッグ中にタイムアウトを無効にする場合に特に望ましいです。
特に、この質問は GoLand デバッガーの使用のコンテキストで発生します。
使用建てるタグ:
「isdelve/delve」 .go」に次のビルドを追加しますタグ:
// +build delve
「isdelve/nodelve.go」に、次のビルド タグを追加します:
// +build !delve
「」を追加package isdelve」を両方のファイルに宣言し、「Enabled」を宣言します。定数:
package isdelve const Enabled = true // or package isdelve const Enabled = false
「isdelve」パッケージをインポートする 3 番目の Go ファイル「a.go」を作成します:
package main import ( "isdelve" "fmt" ) func main() { fmt.Println("delve", isdelve.Enabled) }
設定中GoLand:
使用法:
代替:
あるいは、delve の "set" コマンドは、デバッガの起動後に手動で変数を設定できます。
以上がC# の `Debugger.IsAttached` のような GoLand デバッガーの添付ファイルを検出できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。