Golang は現在非常に人気のあるプログラミング言語であり、効率的なメモリ管理機構、迅速な開発スピード、優れた可読性などの多くの利点を備え、広く使用され、注目されています。ただし、他のプログラミング言語と同様に、Golang にもいくつかのバグや問題があり、開発者は問題を解決するためにデバッグ ツールを使用する必要があります。この記事では、一般的に使用される Golang デバッグ ツールと、それらを使用して問題を解決する方法を紹介します。
1. gdb デバッガー
gdb デバッガーは GNU プロジェクトのデバッグ ツールであり、実行中のプログラムのステータスを分析するために使用できます。 Golang 開発者にとって、gdb デバッガーは、プログラムのクラッシュやデッドロックの原因を特定するのに役立ちます。 gdb デバッガーを使用するには、GDB をインストールする必要があります。コマンドは次のとおりです:
$ sudo apt-get install gdb
次に、gdb デバッガーを使用して Golang プログラムを起動します。コマンドは次のとおりです:
$ gdb your_go_program_name
Golang プログラムは gdb コンソールで実行されます。現時点では、次のような gdb コマンドを使用して Golang プログラムをデバッグできます。
break
コマンド: 指定されたコード行にブレークポイントを設定して、ここでプログラムを停止します。 . デバッグを待っています。 run
コマンド: Golang プログラムを実行し、最初のブレークポイントで停止します。 next
コマンド: コードを 1 行ずつ実行しますが、関数には入りません。 step
コマンド: コードを 1 行ずつ実行し、関数を入力します。 info variables
コマンド: すべての変数の値を表示します。 print
コマンド: 単一変数の値を表示します。 さらに、quit
コマンドを使用して GDB デバッガーを終了することもできます。
2. pprof パフォーマンス アナライザー
pprof パフォーマンス アナライザーは、Golang プログラムのパフォーマンスを分析するために使用されるツールです。 CPU 使用率、メモリ割り当てなど、さまざまな統計を提供できます。 pprof アナライザーを使用するには、プログラムに分析オブジェクトを挿入する必要があります。コマンドは次のとおりです:
import “net/http/pprof” func main() { pprof.Index(http.DefaultServeMux) //接下来启动http服务... }
その後、ブラウザを使用して http://localhost:8080/ debug/pprof
パフォーマンスを表示するためのパス、統計データ。
3. Delve デバッガー
Delve デバッガーは Golang に基づくデバッグ ツールであり、Golang のネイティブ デバッグ ツールでもあります。 Delve デバッガーは、コード編集、再コンパイル、デバッグ、その他の機能を十分にサポートできます。 Delve デバッガーをインストールするには、Go プログラミング言語が必要です。
Delve デバッガーをインストールするコマンドは次のとおりです:
$ go get -u github.com/derekparker/delve/cmd/dlv
次に、次のコマンドを使用して Golang プログラムのデバッグ用に Delve デバッガーを起動します:
$ dlv debug your_go_program_name
Golang プログラム動作中の Delve デバッガ内にあります。現時点では、Delve のいくつかのコマンドを使用してデバッグできます。
break
コマンド: コードの特定の行にブレークポイントを設定します。 Continue
コマンド: 次のブレークポイントまでプログラムを実行し続けます。 next
コマンド: コードの次の行を実行します。 step
コマンド: コードの次の行を実行し、関数を入力します。 variables
コマンド: すべての変数の値を表示します。 4. gops コマンド ライン ツール
gops は、実行中の Golang プログラムを分析するために使用できるコマンド ライン ツールです。コルーチン、スタック、プログラムの実行に使用されるその他の情報など、Golang プログラムの現在のステータスを簡単に表示できます。 gops コマンド ライン ツールを使用するには、まず gops をインストールする必要があります。コマンドは次のとおりです:
$ go get github.com/google/gops
次に、Golang プログラムを実行しているサーバーで次のコマンドを使用して gops を開始します:
$ gops
その後、別の端末を使用できます。ウィンドウ内の gops
プロセスの PID を使用してクエリを実行します。たとえば、プログラムの現在のステータスを取得するには、次のコマンドを使用します。
$ gops stack your_golang_program_pid
上記は、一般的に使用される Golang デバッグ ツールとその使用方法です。これらのツールを通じて、開発者は Golang プログラムの問題をより適切に特定し、修復を迅速化できます。
以上がgolangでデバッグツールを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。