gpt4 book ai didi

c - 在外部写入时从 C 中读取文件

转载 作者:IT王子 更新时间:2023-10-29 01:10:47 24 4
gpt4 key购买 nike

我想编写一个小的 C 程序,它在文件正在被写入的同时从文件中读取。有什么想法吗?

最佳答案

如果您可以控制写入过程,您应该在读取器和写入器中使用 mmap()MAP_SHARED。这样,读者几乎可以立即看到作者所做的更改。

另外,请注意,当您打开文件时,Linux 不会对文件中的数据制作任何快照,因此即使您只是使用 read()<,您也应该看到文件中所做的更改lseek()

为了确定文件是否在 Linux 中被修改/打开/访问/等等,您可以使用 inotify API(参见 inotify manpage)。这允许您让您的进程等待您感兴趣的事件直到它发生(而不是定期轮询)。您还可以使用 epoll() 或更传统的 select() 来实现类似的结果。

关于c - 在外部写入时从 C 中读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8036465/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com