0

なしでプログラムを実行しましたが、valgrindすぐに正常に終了しました。

を実行しようとするとcallgrind(valgrind --tool=callgrind)、プログラムは終了しません (少なくとも 6 時間)。topコマンド出力は次のとおりです。

 PID USER      PR  NI %CPU    TIME+  %MEM  VIRT  RES  SHR S COMMAND
 3722 vhovhann  17   0   75  52:38.95 13.5 10.4g 9.6g  34m R callgrind-amd64
  PID USER      PR  NI %CPU    TIME+  %MEM  VIRT  RES  SHR S COMMAND
 3722 vhovhann  17   0  100  53:21.40 13.6 10.4g 9.6g  34m R callgrind-amd64

プログラムがvalgrindで終了しないのはなぜですか?

4

1 に答える 1

1

プログラムによって異なります。たとえば、スレッドを使用している場合、Valgrind ではスレッドの動作が異なるため、プログラムがデッドロックに陥っている可能性があります (Valgrind はスレッド化されたアプリケーションをシリアル化します)。

于 2013-09-19T07:42:16.533 に答える