gpt4 book ai didi

c - 使用 pwrite() API 时出现错误 no set to EIO

转载 作者:行者123 更新时间:2023-11-30 17:58:17 24 4
gpt4 key购买 nike

我使用 NFS 在我的系统上安装了远程磁盘,并且我正在尝试使用 pwrite() API 写入已安装的远程磁盘上的文件。

这种情况并非每次都会发生,但在某些情况下,在执行 I/O 时 pwrite() 会失败并将错误号设置为 EIO(输入/输出错误)。

有人可以解释一下为什么会出现这个错误吗?有什么方法可以纠正它吗?

谢谢

最佳答案

从读取和写入基于 NFS 的文件的(糟糕)经验中,我了解到您有一个很好的机会通过简单地重试失败的 I/来解决此 EIO O 操作(read()write())。

此外,在NFS上,我们不能假设read()/write()确实传输了指定的数据量,所以它是始终检查相关函数的返回值以了解传输了多少字节是个好主意。

我在底层 NFS 功能或 NFS 驱动程序的结果由内核处理的方式中发现了问题,因此我强烈假设 pread() /pwrite() 显示的效果与我使用 read()/write() 时看到的效果相同。

关于c - 使用 pwrite() API 时出现错误 no set to EIO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12308891/

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