Можно ли использовать mkdir как файловую блокировку в Linux?

Я хотел быстро реализовать какую-то блокировку в программе perl на Linux, которая могла бы использоваться разными процессами.

Поэтому я использовал mkdir как атомарная операция, которая возвращает 1 , если каталог не существует, и 0 , если он существует. Я удаляю каталог сразу после критического раздела.

Теперь,мне указали, что это не очень хорошая практика в целом (независимо от языка). Я думаю, что это нормально, но я хотел бы спросить ваше мнение.

edit: чтобы показать пример, мой код выглядел примерно так:

while (!mkdir "lock_dir") {wait some time}
critical section
rmdir "lock_dir"
6
задан Karel Bílek 26 August 2011 в 17:59
поделиться