Digamos que eu tenha vários scripts de bash executados em paralelo, com código como o seguinte:
#!/bin/bash
tail -f /dev/null &
echo "pid is "$!
É $!
garantido que eu me forneça o PID da tarefa em segundo plano mais recente desse script ou é a tarefa em segundo plano mais recente globalmente? Só estou curioso para saber se contar com esse recurso pode causar condições de corrida quando o PID retornado for de um processo iniciado em outro script.
fonte
$jobstate/$jobtext
para inspecionar o status do processo. Não sem corrida, já que a criança já é colhida no momento em que a armadilha é executada, mas isso significa janelas de corrida muito curtas, onde é muito improvável que os pids já sejam reutilizados.