Saya ingin menjalankan beberapa skrip Bash Shell secara paralel. Namun, saya ingin menghindari kondisi balapan. Apa perintah Unix yang benar-benar atomik yang dapat saya gunakan untuk tujuan ini, dan bagaimana cara menggunakannya?
Jawaban yang Diterima:
Jika lockfile
tidak diinstal pada sistem Anda, maka mkdir
akan melakukan
pekerjaan:ini adalah operasi atom, dan gagal jika direktori
sudah ada (selama Anda tidak menambahkan -p
baris perintah
switch).
create_lock_or_wait () {
path="$1"
wait_time="${2:-10}"
while true; do
if mkdir "${path}.lock.d"; then
break;
fi
sleep $wait_time
done
}
remove_lock () {
path="$1"
rmdir "${path}.lock.d"
}
Bagaimana Cara Memverifikasi Cd Terhadap Gambar Iso?
Bagaimana Cara Mendaftar Patch A -p0 Dari Setiap Direktori Kerja?