- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我已经使用我的 C 程序在我的 Linux 系统上打开了一个用于输出的文件,并且我已经让 posix_fallocate
为它预留了 bunch 磁盘空间。
比我需要的更多,因为我不知道我需要多少。
天真地,我希望当我关闭文件时,它会被修剪到我实际需要的空间。但是,当然,生活并不那么容易。
那么,如何为输出预留一堆空间,然后将其缩减为我实际使用的空间?
谢谢!
最佳答案
行为是预期的 - 引用 posix_fallocate
手册页:
If the size of the file is less than offset+len, then the file is
increased to this size; otherwise the file size is left unchanged.
要在关闭前修复文件大小,请查看 ftruncate
:
The truncate() and ftruncate() functions cause the regular
file named by path or referenced by fd to be truncated to a
size of precisely length bytes.
关于c - 使用 `posix_fallocate` 创建的修剪文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9519957/
我想为正在下载的文件保留空间,就像 posix_fallocate() 那样。 是否也有异步 API,或者我是否需要牺牲后台线程? 最佳答案 posix_fallocate 没有异步版本。 您确实需要
我正在尝试为文件操作预分配磁盘空间,但是,我遇到一个奇怪的问题,当我调用 posix_fallocate 为以追加模式打开的文件分配磁盘空间时,它只分配一个字节,而且文件内容也是意外的。有人知道这个问
我已经使用我的 C 程序在我的 Linux 系统上打开了一个用于输出的文件,并且我已经让 posix_fallocate 为它预留了 bunch 磁盘空间。 比我需要的更多,因为我不知道我需要多少。
我正在讨论在 posix_fallocate 和 fallocate 之间使用哪个函数。posix_fallocate 立即写入文件(将字符初始化为 NULL)。但是,fallocate 不会更改文件
我正在开发定制的 android 目标板。板文件系统安装在 NFS 上。有一个 API 调用过程 Libcore.os.posix_fallocate 尝试创建物理文件的长度,但由于“错误:传输端点不
我的全文搜索引擎在 NFS 存储上存储索引数据。由于频繁的读写ioes,我想为每个表文件预分配巨大的连续磁盘空间,所以求助于posix_fallocate。在 NFS 卷上,我的小演示因“EOPNOT
我有一个可以重新导出 NFS 共享的 fuse 模块。像 fio 这样调用 posix_fallocate 的应用程序最终会调用我的 fuse 写入函数,并以 4K 的散布写入一个字节。这反过来会导致
我是一名优秀的程序员,十分优秀!