Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
大家好,我正在使用文件制作程序我知道如何在文件中读写。但是请任何人帮助我了解 C 编程中的文件读写锁。比如如何插入锁以及如何释放它,尤其是在分叉。请给出一个小例子或教程,因为我没有提交任何关于 c 文件锁定的内容
谢谢
文件锁定不是 C 语言的一部分,而是依赖于操作系统。由于您谈论分叉,我假设您使用的是 UNIX 或类似 UNIX 的系统(例如 Linux 或 BSD。)
在这种情况下,您可以使用flockorlockf函数。这些锁在分叉时保留,这意味着如果在分叉之前在父进程中获得锁,则多个进程可以对同一个文件拥有一个独占锁。
flock
lockf
在 Windows 上,它可以在CreateFile调用中指定,或者稍后使用LockFileorLockFileEx函数指定。
CreateFile
LockFile
LockFileEx