Разве не должно быть больше свободной оперативной памяти? [дубликат]

Задача файла блокировки - защитить выполнение некоторых команд блокировкой (также называемой мьютексом) . То есть рассмотрим следующую программу:

if lockfile "$LockFile"; then
  stuff
  more stuff
  rm -f "$LockFile"
else
  echo 1>&2 "Fatal error: another process has been keeping the lock for too long or the lock file is inaccessible"
  exit 3
fi

Только один экземпляр сценария может одновременно выполнять материал ; другие вещи часть. Если вы запустите второй экземпляр, то второй будет ждать, пока первый не закончит работу (точнее, пока он не удалит файл блокировки), до определенного максимального времени, заданного параметром - ВРЕМЯ .

С параметром -r0 второй экземпляр вообще не ждет: он немедленно переходит в ветвь else . Таким образом, вы не можете запускать параллельный экземпляр этого сценария (или этой части сценария, если это всего лишь одна часть более крупного сценария).

3
13.04.2017, 15:37
0 ответов

Теги

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