問題タブ [conditional-breakpoint]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
gdb - gdb を使用した pthread のデバッグ
非常にまれなデッドロックをデバッグしようとしていますが、タイプ 1 (再帰的) の pthread_mutex の問題に絞り込みました。このミューテックスがどこから来ているのかを追跡したいのですが、私たちのコードはすべて通常のミューテックスを使用しているので、いつミューテックス タイプ == 再帰的であるかを検出して追跡することが理にかなっていると思いました。
pthread_mutex_lock に手動ブレークポイントを設定したり、スタック ポインターを介して pthread_mutex_t を逆参照したりして、その型を調べようとしましたが、これは何百万回も呼び出され、mutex 型 == 再帰のケースをキャッチするのに永遠に時間がかかります。
また、ライブラリを挿入し、pthread_mutex_lock を置き換えてミューテックス タイプにブレークポイントを設定できるようにしようとしましたが、ヒットしませんでした (これが pthread_mutex_lock へのすべての呼び出しをキャッチしているとは確信していませんでした)。
再帰型のミューテックスで pthread_mutex_lock が呼び出されるたびに、ウォッチポイント/条件付きブレークポイントを設定する方法がgdbにあるに違いないと感じていますか?
上記のヘルプをいただければ幸いです。前もって感謝します。
c - 実行時にポインタ変数がジャンクであるかどうかを確認するにはどうすればよいですか?
valgrindを使用してコードを検証すると、関数の1つで、引数としてポインターの配列を受け取る「条件付きジャンプまたは移動は初期化されていない値に依存します」と報告されます。
では、実行時に配列にジャンク値(条件付きブレークポイントを使用している可能性があります)が含まれているかどうかを確認するにはどうすればよいですか?たとえば、私はポインタにアクセスしないので、プログラムは壊れません。
ジャンクポインタを識別するためにチェックする条件は何ですか?
debugging - Visual Studio のブレーク ポイント条件: 何かが false を返したときにブレークをトリガーします。出来ますか
私は、ある瞬間にfalseを返す可能性のある他の多くの関数呼び出しを含む関数本体を持っています。毎回ポイントが非常に多いため、各ブレークポイントを行に配置するのは非常に退屈です。それはVisual Studio 2008に関するものです.いくつかのブレーク条件を設定する方法はありますか?例:「何かがその本体でfalseを返した場合-ブレークして、F10などまで待ちます。」? あなたがそれについて何か知っていれば、私はとてもうれしいです..またはそのための良いプラグインかもしれません.
c# - ブレークポイントに達した後、変数の値が変わるのはなぜですか?
約30%の確率で失敗する単体テストをデバッグしようとしています。残念ながら、コードにブレークポイントがある場合は失敗しないため、これはある種のタイミングの問題のようです。
そこで、問題のあるアサーションに条件付きブレークポイントを設定しました。このブレークポイントは、アサーションがfalseになるときに発生します。予想通り、約1/3の時間でブレークポイントに到達しました。ただし、実際に式の値を調べると、すべて問題ないように見えます。そして、確かに、続行を押すと、テストは成功します。
なぜこれが当てはまるのかを誰かが理解するのを手伝ってもらえますか?別のスレッドが値を変更している場合、ブレークポイントに到達したときにスレッドが停止しませんか?または、次のようなことが起こっている可能性があります。
- 状態を確認してください...trueと評価してください
- 別のスレッドが変数を変更します
- 壊す
私は自分の問題に対する具体的な解決策を本当に探していません(コードが多すぎて合理的に投稿できないか、誰かが踏みにじることを期待しています)。条件付きブレークポイントがどのように機能するか、およびそのようなことが発生する理由についての一般的な入力を探しています。
注:私はVisual Studio 2012(および重要な場合は.NET 4.0 C#)を使用しています。
また注意:
失敗しているアサーションは次のとおりです。
eclipse - Eclipse でメモリ ブレークポイントを設定する
Eclipseでメモリブレークポイントを設定するにはどうすればよいですか? つまり、特定のメモリ位置のデータが変更されたときにトリガーされる条件付きブレークポイントを設定したいと考えています。
この質問は以前にもありましたが、提供された唯一の回答は質問に対応しておらず、基本的にEclipse オンライン ヘルプにある情報と同じです。
私が探しているのは、特定のメモリ アドレスのデータが変更されたときにトリガーされる Eclipse の条件付きブレークポイントを設定するためのより詳細な情報 (または例が良いでしょう) です。
java - Eclipseで条件付きブレークポイントとスクラップブックをリンクすることは可能ですか?
Eclipseで条件付きブレークポイントとスクラップブックをリンクすることは可能ですか?条件付きブレークポイントでスクラップブックコードの一部を(自動的に)実行するようにトリガーしたいと思います。何かのようなもの...
ソースを変更することでこれは簡単なことですが、本番コードに対して、またはCodelock中に実行する必要があります。または、他のツールを使用してこれを行う方法はありますか?*注:これはAndroid開発用です(ソリューションに影響するかどうかはわかりません)
java - Eclipseで条件付きブレークポイントを移動するにはどうすればよいですか?
間違った行に条件付きブレークポイントを設定しました。1行上に移動したいと思います。それは可能ですか?条件を正しい行の新しいブレークポイントにいつでもコピー ペーストできることはわかっていますが、ドラッグ アンド ドロップするだけの方が便利です。
例:
この例では、Eclipse は internalList の各項目で中断しますが、numberFound 定義で中断する場合は 1 回だけ中断する必要があります。私の現在のシナリオではどちらがより便利です。
xcode - Xcode LLDB: this ポインターに基づいて条件付きブレークポイントを設定するにはどうすればよいですか?
C++ アプリケーションがあり、LLDB を使用して Xcode でデバッグしようとしています。メンバー関数内で停止したいのですが、 this ポインターが特定のインスタンスと一致する場合のみです。
次の式を使用して、ブレークポイントに条件を設定しようとしました。
しかし、次のエラーが繰り返し発生します。
そのブレークポイントで一時停止すると、デバッガー コンソールでも上記の式を入力できません。
私は何を間違っていますか?
c++ - 特定のテンプレート パラメータのテンプレート内のブレークポイント
if I == 10 の条件でコンストラクターにブレークポイントを設定したい場合はどうすればよいですか?