我找到的关于C和POSIX的参考资料都没有明确说明C99的fesetround()是否线程安全。即使GNU文档也没有[1]。状态是每个线程还是每个进程?[1] https://www.gnu.org/software/hello/manual/libc.html#Rounding
C11标准定义了线程和fesetround(),并回答了这是每个线程的。 (这是唯一合理的答案,但必须声明。)草案N1570 [1] 第7.6.2节:“浮点环境具有线程存储期。线程浮点环境的初始状态是创建它的线程的浮点环境在创建时的当前状态。”[1] http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf