如何在Ubuntu Linux中使用C語言將文件鎖定指定的時間段(10秒)?在Ubuntu中使用C API鎖定和解鎖文件LInux
2
A
回答
3
它的工作原理是這樣的:
#include <io.h>
#include <sys/file.h>
...
int f = open ("filename", O_RDONLY);
if (f < 0)
error();
if (flock (f, LOCK_EX))
error();
sleep (10);
if (flock (f, LOCK_UN))
error();
...
1
使用fcntl(2)
鎖定文件,然後使用alarm(2)
打電話給你SIGALRM
處理程序,然後將其解鎖。
+1
在信號處理程序中調用'flock'安全嗎? – 2010-01-13 20:29:10
+0
Hrm。 '信號(7)'說不。 'fcntl(2)'應該沒問題。 – 2010-01-13 20:34:25
相關問題
- 1. 使用java API鎖定和解鎖文件
- 2. 從輸入文件鎖定和解鎖
- 3. Linux文件鎖定
- 4. 使用box api,我如何鎖定或解鎖文件?
- 5. Linux鎖定進程和文件
- 6. 使用C#鎖定文件#
- 7. 用VBA鎖定和解鎖
- 8. 用PhpStorm鎖定/解鎖文件
- 9. 使用c/C++鎖定Linux中的文件
- 10. 使用VBA鎖定和解鎖
- 11. 使用jQuery鎖定和解鎖頁面?
- 12. 文件鎖定爲Linux
- 13. 屏幕鎖定和解鎖
- 14. 解鎖鎖定的java文件Android studio
- 15. 在Java中鎖定Linux文件
- 16. 使用Mutex鎖定/解鎖並在C中廣播pthreads
- 17. 如何使用C#解鎖文件?
- 18. 刪除用戶在perforce中解鎖所有鎖定的文件
- 19. 在C中刪除解鎖文件#
- 20. 用於iPhone鎖定和解鎖的UIEvent?
- 21. Linux/Windows Shell腳本解鎖PGP文件
- 22. C++腳本在使用「LockWorkStation()」鎖定後「解鎖」窗口
- 23. C#解鎖目錄和複製文件
- 24. fcntl字節linux中的文件鎖定
- 25. 連貫鎖定解鎖使用
- 26. 使用Thread.Sleep解決鎖定死鎖
- 27. 使用鎖定()C#
- 28. 在Subversion中遠程鎖定/解鎖文件
- 29. 鎖定和解鎖遊戲關卡android
- 30. SQLite文件鎖定和DropBox
請記住,這些不是強制性的鎖,它們是諮詢鎖 - 意味着使用該文件的每個人都需要它們。如果他們不這樣做,他們可以自由地操作文件。 – nos 2010-01-13 17:47:59