可以从同一文件描述符的两个线程并行调用fwrite和fclose吗?

Jay*_*Jay 4 c io file fwrite fclose

如果fwrite&fclose从同一个文件描述符的两个线程并行调用会发生什么?

R..*_*R.. 9

POSIX要求FILE访问是线程安全的,但是由于fclose关闭文件并使指针无效,所以没有办法(即,它不仅仅是一个规范问题,而是一个基本的API问题,永远不会被"修复"或消失)到使用fclose时,另一个线程可能正在访问FILE依然.你需要做自己的锁定.