在 mmap 相同文件后删除 tmpfs(/dev/shm) 中的文件
delete file in tmpfs(/dev/shm) after mmap the same file
我做了一些搜索,但没有找到类似的问题。
这是我的步骤:
- 将文件复制到 /dev/shm (tmpfs)
- mmap 带锁的文件
- 从该文件读取数据
- 删除文件
第4步之后,之前加载的数据还在,为什么?
提前致谢
在 Unix 上,直到每个剩余进程 closes/munmaps 它才会删除文件的数据。
由于您已打开文件并拥有活动句柄或映射到该文件,因此您可以根据需要继续读取和写入文件数据。在您关闭它之前,它不会被释放。
我做了一些搜索,但没有找到类似的问题。 这是我的步骤:
- 将文件复制到 /dev/shm (tmpfs)
- mmap 带锁的文件
- 从该文件读取数据
- 删除文件
第4步之后,之前加载的数据还在,为什么? 提前致谢
在 Unix 上,直到每个剩余进程 closes/munmaps 它才会删除文件的数据。
由于您已打开文件并拥有活动句柄或映射到该文件,因此您可以根据需要继续读取和写入文件数据。在您关闭它之前,它不会被释放。