我将大约50k字节的数据写入一个文件(该文件存储在U盘中,并挂载在linux 2.6.37上。FAT32 ),它每200 ms.Whether使用一次O_NOBLOCK,write()函数有返回EAGAIN.If的风险是,为什么以及在什么情况下。我已经运行了半个小时的程序,并且没有错误返回报告。
发布于 2013-04-17 21:20:20
正确但已删除的答案副本:
不是的。O_NONBLOCK标志不影响对常规文件的处理。
发布于 2013-04-17 21:26:40
一些reference,为了完整性:
这只适用于管道;对于常规文件,它被忽略。
如果O_NONBLOCK标志被清除,写请求可能会导致线程阻塞,但在正常完成时,它将返回nbyte。
如果设置了O_NONBLOCK标志,则应通过以下方式以不同方式处理write()请求:
写
-1
https://stackoverflow.com/questions/16060589
复制相似问题