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

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

fwritefcloseFILE数据结构进行操作。 由于这是一个较大的数据结构,它存储的不仅仅是文件描述符,因此答案是不好的。

除非确保使用互斥锁进行primefaces操作,否则不要这样做。

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

对于这种情况,您需要定义方法的优先级。 您可以使用“synchronized”控制方法。