Maybe I'm missing something, but shouldn't locks generally have some protections against race conditions? E.g. starting from line 15:<p><pre><code> acquire_lock_for() {
if not_locked $1; then
lock_log "Creating $1 lock."
touch "$LOCK_DIR/$1".lock
check_execution "acquire lock"
fi
}
</code></pre>
what if another process creates lock file between the `if not_locked` and `touch` lines?