私がオンラインで見つけた C および POSIX のリファレンスでは、C99 の fesetround() のスレッドセーフ性が指定されていません。GNU のドキュメントでさえそうではありません[1]。状態はスレッドごとですか、それともプロセスごとですか?
[1] https://www.gnu.org/software/hello/manual/libc.html#Rounding
私がオンラインで見つけた C および POSIX のリファレンスでは、C99 の fesetround() のスレッドセーフ性が指定されていません。GNU のドキュメントでさえそうではありません[1]。状態はスレッドごとですか、それともプロセスごとですか?
[1] https://www.gnu.org/software/hello/manual/libc.html#Rounding
スレッドと fesetround() の両方を定義する C11 は、スレッドごとであると回答しています。(これが唯一の合理的な答えですが、それを述べなければなりませんでした。)
Draft N1570 [1] セクション 7.6.2: 「浮動小数点環境にはスレッド ストレージ期間があります。スレッドの浮動小数点環境の初期状態は、その時点でそれを作成したスレッドの浮動小数点環境の現在の状態です。創造の。」
[1] http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf