github.com/shogo82148/std@v1.22.1-0.20240327122250-4e474527810c/runtime/cpuprof.go (about) 1 // Copyright 2011 The Go Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style 3 // license that can be found in the LICENSE file. 4 5 // CPU プロファイリング。 6 // 7 // プロファイリングクロックのタイムステップのシグナルハンドラは、最新のトレースのログに新しいスタックトレースを追加します。ログは、ユーザーゴールーチンによって読み込まれ、フォーマットされたプロファイルデータに変換されます。読み取り側がログに追いついていない場合、これらの書き込みは失われたレコードのカウントとして記録されます。実際のプロファイルバッファはprofbuf.goにあります。 8 9 package runtime 10 11 // SetCPUProfileRateはCPUプロファイリングのレートをhzサンプル/秒に設定します。 12 // hz <= 0の場合、プロファイリングはオフになります。 13 // プロファイラがオンの場合、レートを変更する前にオフにする必要があります。 14 // 15 // ほとんどのクライアントは、[runtime/pprof] パッケージまたは 16 // [testing] パッケージの-test.cpuprofileフラグを直接呼び出す代わりに使用するべきです。 17 func SetCPUProfileRate(hz int) 18 19 // CPUProfileはパニックします。 20 // 以前はランタイムによって生成されたpprof形式のプロファイルの 21 // チャンクへの直接的なアクセスを提供していました。 22 // その形式を生成する方法が変更されたため、 23 // この機能は削除されました。 24 // 25 // Deprecated: [runtime/pprof] パッケージ、 26 // または [net/http/pprof] パッケージのハンドラ、 27 // または [testing] パッケージの-test.cpuprofileフラグを代わりに使用してください。 28 func CPUProfile() []byte