Аз съм на linux, nfs, с много включени машини.
Опитвам се да използвам fcntl за прилагане на заключване на файлове. Използвах flock, докато не открих, че работи само между процеси на една и съща машина.
Сега, когато извикам fcntl с F_SETLKW, perl алармите (за добавяне на таймаут) не работят както преди. Това обикновено би било добре, но ctrl-c също не работи наистина.
Това, което вярвам, че се случва, е, че fcntl проверява за сигнали само на всеки 30 секунди или така. Алармата се връща в крайна сметка. Ctrl-c се хваща... в крайна сметка.
Има ли нещо, което мога да направя, за да коригирам честотата, с която fcntl проверява за тези сигнали?
File::NFSLock
вероятно ще ви даде решение, което просто работи, без да се налага да пишете никакъв код. - person rafl   schedule 23.09.2010