2

私は巨大なPerlスクリプトを持っていますが、それは何度もハングします。それが実行状態にあるとき、私はそれが現在実行しているステップを見つける必要があります。
「Devel::Trace」[コンパイル時エンティティ]は必要ありません。straceのようなものはありますか?スクリプトのpidを渡すと、実行時に何が実行されているかが表示されます。私にお知らせください。

〜マンダー。

4

2 に答える 2

3

「ステップ」とは何ですか?

あなたが言及straceし、システムコールstraceを追跡します。それが必要な場合は、頭を下げて使用してください。Perlでは完全に正常に動作します。strace

どのPerlステートメントが実行されているかを追跡したい場合perldは、Perlデバッガーでスクリプトを実行できます。トレース機能があります。この関数は、簡単なインターフェイスを介してDevel::Traceによっても提供されます。

(Devel :: Traceでどのような問題があるのか​​わかりません。実行されるときに実行されるステートメントが表示されないことを意味しているようですが、まさにそれが実行されます。)

于 2012-02-10T08:14:12.647 に答える
0

デバッグモジュールを使用してプログラムを再起動したり、本番環境から離れて実験できるように環境のクローンを作成したりできないコーナーで自分自身をペイントすることはお勧めできません。

実行時にデバッガーEnbuggerを挿入する前に、よく考えて、リスクの少ない対策を探してください

于 2012-02-10T08:50:42.270 に答える