我想要一个用作计数器的文件。用户 A 将写入并增加此数字,而用户 B 请求读取文件。是否有可能用户 A 可以锁定此文件,以便在用户 A 的写入完成之前没有人可以读取或写入它?
我已经调查过,flock但似乎无法按我的预期工作。
flock -x -w 5 /dev/shm/counter.txt echo "4" > /dev/shm/counter.txt && sleep 5
Run Code Online (Sandbox Code Playgroud)
如果有更合适的方法来获取这个类似原子的递增文件,那也很高兴听到!
我的目标是:
LOCK counter.txt; write to counter.txt;
Run Code Online (Sandbox Code Playgroud)
同时
Read counter.txt; realize it's locked so wait until that lock is finished.
Run Code Online (Sandbox Code Playgroud)