在调用 fflush
之前,我可以将 fwrite
视为 = 非阻塞写入吗?
如果没有,为什么不,我的选择是什么?
最佳答案
从技术上讲,fwrite()
是一个阻塞调用,因为直到过程完成,它才返回。但是,fwrite()
的完成定义是,您提供的数据已被写入内部文件缓冲区。作为副作用,某些缓冲区也可能作为fwrite()
调用的一部分写入磁盘,但是您不能依赖该行为。如果您绝对需要将数据存储在磁盘上,则需要调用fflush()
。
关于c - fwrite 是非阻塞的吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2493608/