質問: golangメモリを分析する方法は? 実行時に1.2gbのメモリを使用するgolangプログラムを作成しました。go tool pprof http://10.10.58.118:8601/debug/pprof/heapを呼び出すと、323.4mbのヒープ使用量のダンプが生成されます。 残りのメモリ使用量はどうですか? golangランタイムメモリを説明するためのより良いツールはありますか? gcvisを使用すると、これが得られます。..およびこのヒープフォームプロファイル:ここに私のコードがあります: https://github.com/sharewind/push-server/blob/v3/broker
回答: 簡単に言うと、@ cookie of nineの答えに加えて、--alloc_spaceオプションを試すことができます。go tool pprofはデフォルトで--inuse_spaceを使用します。メモリ使用量をサンプリングするため、結果は実際のサブセットです。 by --alloc_space pprofは、プログラムの開始以降に割り当てられたすべてのメモリを返します。