Порядок сигналов: SIGPOLL и SIGCHLD

Вы можете сделать функцию примерно такой:

function append()
{
if [[ -s /tmp/stderr ]]
then 
     {   echo -e '\nText you want like ***\n' >> log.txt
         cat /tmp/stderr >> log.txt;
         rm /tmp/stderr
     }
fi
}

Затем выполните команду следующим образом:

$ find /some_dir -maxdepth 1 -mindepth 1 > outputFile.txt 2>/tmp/stderr;
$ append
0
16.07.2016, 16:51
1 ответ

На этом дизайне везде написано состояние гонки. Вы не можете быть уверены, что сигналы будут доставлены по порядку или даже вообще. Если вы используете Perl, это делает его вдвойне неопределенным.

Измените дизайн таким образом, чтобы от родителя к потомку было какое-то подтверждение о получении данных. Порядок и номер доставки сигнала - вещь ненадежная, требовать портативного решения еще более безнадежно.

3
28.01.2020, 02:27

Теги

Похожие вопросы