[解決済み] GDBのブレークポイントを、指定された回数だけブレークさせるには?
2023-04-10 14:39:18
質問
ある関数が大量に呼び出され、最終的にセグメンテーションフォールトを起こすことがあります。
しかし、私はこの関数にブレークポイントを設定し、それが呼び出されるたびに停止したくありません。
を設定すればいいと聞いたことがあります。
counter
を設定すると、ブレークポイントがヒットするたびにカウンタがデクリメントされ、そのカウンタがトリガされるのは
counter
= 0.
これは正確なのでしょうか、もしそうならどうしたらいいのでしょうか。そのようなブレークポイントを設定するための gdb コードを教えてください。
どのように解決するのですか?
読む
5.1.6項
を読んでください。やるべきことは、まずブレークポイントを設定し、そのブレークポイント番号に「無視回数」を設定することです、例えば
ignore 23 1000
.
ブレークポイントを何回無視すればいいのかわからない、手作業で数えたくない場合は、次のようにするとよいでしょう。
ignore 23 1000000 # set ignore count very high.
run # the program will SIGSEGV before reaching the ignore count.
# Once it stops with SIGSEGV:
info break 23 # tells you how many times the breakpoint has been hit,
# which is exactly the count you want
関連
-
[解決済み】「The breakpoint will not currently be hit」を改善するには?このドキュメントにはシンボルが読み込まれていません。" という警告はどうすれば改善されますか?
-
シンボルテーブルが読み込まれていません。"file "コマンドを使用してください。
-
VScodeでデバッグを行う場合、デバッグを開始できない
-
[解決済み] GDBで現在の関数からステップアウトする
-
[解決済み] GDBでメモリ範囲をディスアセンブルする方法は?
-
[解決済み] Bashスクリプト内でGDBを使用してコマンドライン引数を持つプログラムを実行するにはどうすればよいですか?
-
[解決済み】GDBでレジスタの値を表示するには?
-
[解決済み] 16進数または10進数で変数を表示する。
-
[解決済み] GDBで実行ファイルを自動的に実行するには?
-
[解決済み] gdb - パイプ入力(引数ではない)でデバッグする [duplicate]
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
VScodeでデバッグを行う場合、デバッグを開始できない
-
関数の暗黙の宣言 この警告問題の原因と解決策
-
[解決済み] GDBで現在の関数からステップアウトする
-
[解決済み] GDBでメモリ範囲をディスアセンブルする方法は?
-
[解決済み] 対話型デバッグ中に gdb の出力を強調表示したり色付けする方法は?
-
[解決済み] 16進数または10進数で変数を表示する。
-
[解決済み] GDBで実行ファイルを自動的に実行するには?
-
[解決済み] gdbでのコアファイルの保存
-
[解決済み] gdbで<value optimized out>は何を意味するのですか?
-
[解決済み] gdb - パイプ入力(引数ではない)でデバッグする [duplicate]