W skrypcie basha w Linuksie używam flock [polecenie flock, a nie system call flock()] do implementacji blokowania plików, chroniąc tym samym równoczesny dostęp do współdzielonego zasobu [który jest plikiem w tmpfs].Czy stado zostało automatycznie zwolnione przy wyjściu z procesu?
mam teleskopowe pułapek do obsługi nieprawidłowe zakończenie mojego skryptu: trap "{ rm -rf $LOCK ; rm -rf $TMPFS_FILE; exit 255; }" SIGINT SIGTERM
gdzie $ LOCK jest mój plik blokady i $ TMPFS_FILE jest mój zasób udostępniony.
Moje pytanie brzmi: czy muszę jawnie odblokować plik? Czy Linux robi to dla mnie po zakończeniu programu [zarówno w przypadku dobrowolnego zakończenia, jak i wymuszonego] scenariusza?
Pokrewne pytanie o stadzie() w Pythonie: http://stackoverflow.com/questions/3918385/flock- pytanie. –
@CodeGnome Myślę, że chodzi o polecenie 'flock', a nie o wywołanie systemowe' flock() ' – mkb