'wait $COPROC_PID' не ждет
Следующий тестовый скрипт:
#!/bin/bash
f() { :; }
while :; do
coproc f par1
wait $COPROC_PID
done
залить консоль с:
./debug.sh: line 7: warning: execute_coproc: coproc [8740:COPROC] still exists
./debug.sh: line 7: warning: execute_coproc: coproc [8741:COPROC] still exists
То есть, wait
не ждет, пока сопроцесс завершится.
Версия Bash - 4.2.0(5)-релиз. Этого не происходит с 4.1.5(1)-релизом.
Как вы думаете, это ошибка?
1 ответ
Это не ошибка. Вы назвали свой coproc "f", поэтому он будет находиться под $f_PID.