Arka fon:
Hesaplamalı biyoloji yazılımı için bir test senaryosu yazıyorum. Test ettiğim yazılımın çalışması günler hatta haftalar alabilir, bu nedenle sistem çökmeleri veya elektrik kesintileri durumunda yerleşik bir kurtarma işlevine sahiptir.
Kurtarma sistemini nasıl test edeceğimizi anlamaya çalışıyorum. Özellikle, programı kontrollü bir şekilde "kilitlemek" için bir yol bulamıyorum. Bir şekilde bir süre sonra bir SIGKILL komutunun çalışmasını zamanlamayı düşünüyordum. Test durumunun her seferinde aynı hızı çalıştırması garanti edilmediğinden (paylaşılan bir ortamda çalışır) bu muhtemelen ideal değildir, bu nedenle günlükleri istenen çıktıyla karşılaştırmak zor olacaktır.
Bu yazılım tamamladığı her analiz bölümü için bir satır yazdırır.
Soru:
Bir programdan çıktı yakalamak ve daha sonra belirli bir satır / satır program tarafından çıktısı olduğunda programı öldürmek için iyi / zarif bir yol (bir kabuk komut dosyası) olup olmadığını merak ediyordum?