Can a system()
звонок может когда-либо die
в Perl 5?Может ли вызов системы Perl() когда-либо умирать?
(другими словами, для того, чтобы 100% ударостойкого программа, которая делает system()
вызов, это нужно завернуть в eval
блок, или это совершенно совершенно ненужным?)
Я не нашел ни одного упоминания этой возможности в perldoc system
, но не нашел точного «этого звонка никогда не умирает».
ПРИМЕЧАНИЕ: вопрос касается базового CORE Perl здесь, нет autodie
или любого другого настраиваемого модуля, который имел бы аналогичный эффект. Кроме того, предположим, что сигнал ALRM
не установлен или какой-либо другой пользовательский обработчик сигналов в этом отношении.
Я предполагаю, что все версии Perl 5. * ведут себя одинаково, но если нет, то будет оценен ответ, относящийся к 5.8.
Я не пошел и не посмотрел на источник, поэтому я не отправляю это как ответ, но я был бы удивлен, если бы у системы не хватало памяти. – Gilles
@ Gilles - «Из памяти» заставляет Perl выпускать «die» вместо coredump/crash? Я бы предположил, что позже, но не обязательно – DVK
@ Gilles - [если бы у нас было место, где мы могли бы задать вопросы программирования ...] (http://stackoverflow.com/questions/13243637/is-there-a-standard -way-за жемчужно-на-себя-когда-это работает, из-за нехватки памяти). Посмотрим, что узнает SO мудрость. – DVK