2

非常に長い項目 (数千) のリストを持つ特別なコンボ ボックスがあり、それを開いたときに計算する必要があります。何かをテストしていたとき、開くのに約 1 分かかったことがわかり、ぞっとしました。そこで、プログラム (同じビルド、同じオプション) を Sampling Profiler に接続して、何がそんなに時間がかかっているのかを確認しました。開くのに約 5 秒しかかかりませんでした。Windows から直接実行してみましたが、今回は予想どおり 2 ~ 3 秒しかかかりませんでした。

では、まったく同じ EXE が、Delphi デバッガを接続すると、数値の計算が 25 倍以上遅くなるのはなぜでしょうか? 条件付きブレークポイントが評価されるなど、明らかなことではありません。デバッガーが存在するだけで、速度が低下しているようです。誰かが理由を知っていますか?

4

1 に答える 1

7

再投稿: 多くのデバッグ出力 (OutputDebugString) を生成していますか? イベントログに何か表示されますか?

于 2010-03-16T01:56:37.847 に答える