2011-03-05 16 views
7

Hata ayıklayıcı altında bir perl işlemi başlatmak için bir yol bulmaya çalışıyorum, ancak sadece ilk ifadede durmadan ve 'c' girmek zorunda kalmadan otomatik olarak çalışmaya başla Başlat. Bu modül daha büyük bir sistem tarafından çalıştırılmakta ve periyodik olarak (harici koşullara bağlı olarak) programı kesintiye uğratmak suretiyle kesmek, bazı veri yapılarını incelemek ve devam ettirmek zorundayım.ilk belirtimde durmuyor perl hata ayıklayıcısı var

Açıkçası, denetleme programının "perl -d myProcess" yöntemini kullanarak işlemime başlatabilirim, ancak yalnızca ilk ara vermeden çalışmasını nasıl sağlayabilirim. Bunun nasıl gerçekleşeceğini bilen var mı?

Çok teşekkürler.

+0

şey, umarım birileri bu genişletebilirsiniz uygun bir cevaba. – daxim

cevap

7

Teşekkürler. Bu büyük bir ipucuydu. "NonStop" dahil olmak üzere birkaç seçenek görüyorum.

PERLDB_OPTS="NonStop" perl -d myprog.pl & numarasında hile yapılıyor gibi görünüyor. Sonra sadece hata ayıklayıcısını kaldırmak için sadece kill -INT <pid> ve fg. Çalışmaya devam edip bg’a devam ettikten sonra devam edecek.

2

Ayrıca bu yapılandırma seçeneğini .perldb dosyasına da ekleyebilirsiniz. yapılandırma dosyasının biçimi işte

DB::parse_options("NonStop=1"); 

Diğer yararlı seçenekler gider, biraz sıradışı ve çok iyi belgelenmiş değildir: `.perldb` dosya ile

DB::parse_options("dumpDepth=3"); 
DB::parse_options("PrintRet=0"); 
$DB::deep = 1000; 
İlgili konular