问题标签 [strictfp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
66 浏览

java - 如果我使用安装在不同操作系统上的 docker 使用 strictfp,是否可以获得不同的结果?

strictfp我在代码中没有使用一些双重数学运算。

我在不同的操作系统上运行 docker,但在任何地方我都使用相同的 dockerFile。

在我的数学运算中是否有可能得到不同的结果?

附言

我知道 Strictfp 可确保您从每个平台上的浮点计算中获得完全相同的结果。但我不完全确定“平台”是什么意思

0 投票
2 回答
28 浏览

java - 来自 Java 编译器的 Android 中的 strictpf

我有一个物理应用程序,我想通过 J2SE 6 使用 strictfp(我现在在 Windows/Mac/Linux 机器中使用和工作)跨平台保持确定性。

我需要将此代码转换为编译:

-安卓

-IOS

在这些平台上可以使用 strictfp 吗?

0 投票
1 回答
82 浏览

java - Java 的 strictfp 修饰符是否适用于函数调用?

更准确地说,如果调用堆栈中存在一个带有 strictfp 修饰符的函数,那么调用堆栈顶部的函数是否也会遵守 strictfp 修饰符?

在此示例中,foo1似乎foo2返回相同的值。换句话说,当调用堆栈顶部的函数也具有修饰符时,调用堆栈顶部的函数是否具有 strictfp 修饰符似乎并不重要。

这总是成立吗?如果我为 选择不同的值x怎么办?如果我选择正弦以外的浮点运算怎么办?

0 投票
1 回答
42 浏览

java - 没有 strictfp 的最小精度单位

查看数学类,ulp方法

如果该方法被应用为: Math.ulp(Float.MAX_VALUE),那么 Javadoc 文档中的这条规则就会出现:

如果参数为 ±Float.MAX_VALUE,则结果等于 2 104

即使浮点数不是strictfp,是否可以确保从一台机器到另一台机器这个数字(2 104)总是那个数字?

0 投票
1 回答
43 浏览

java - 为什么 Oracle JDK Javadoc 不包含严格的浮点修饰符?

如果我在StrictMath.toRadians()NetBeans Javadoc 窗口中查看,前两行显示为

这是有道理的,因为我使用的 JDK 已经用修饰符StrictMath.toRadians()定义了。strictfp但是,如果我在网上查看StrictMathJavadoc,我看不到任何关于strictfp. toRadians()例如,Javadoc的第一行是

我使用的是 JDK 1.8.0_241,运行时稍微领先。相当肯定它是 Oracle JDK。据我所知,JDK 源代码中的 Javadoc 注释StrictMath与上面链接的 Oracle 页面中发布的内容相匹配。

是 Javadoc 工具忽略了strictfp修饰符,还是 Oracle 故意将其从生成的StrictMathJavadoc HTML 页面中取出?

(我试图为一个虚拟strictfp函数生成 Javadoc,但似乎在我试图在其中执行此操作的项目中出现了一大堆看似无关的 Javadoc 错误)。

0 投票
2 回答
82 浏览

java - 我们如何在现实生活中使用 strictfp 方法?

这个问题不是这个问题的重复。我知道strictfpjava中的关键字就是用于这个目的。但是我们如何在现实生活中使用它。它的优点是什么?

0 投票
1 回答
33 浏览

java - 使用 strictfp 修饰符声明的 Java 类无法使用 Modifier.isStrict(int) 进行测试

需要明确的是,这个问题是严格假设的。就个人而言,我在现实世界中不需要这种行为;我偶然发现了它。

灵感来源:如何制作(静态)初始化程序块 strictfp?

如果我声明一个带有strictfp修饰符的 Java 类:

...然后我测试使用Modifier.isStrict(int)

上面的代码失败:方法main()throws IllegalStateException。我尝试了一个有没有方法的类声明PublicStrictfpClass.f()——都失败了。

我是不是误会了……?

  • 在类声明中使用strictfp修饰符?
  • 方法Modifier.isStrict(int)

我正在使用 OpenJDK 8 的最新补丁从 Linux 运行此代码。

最后,在问这个问题之前,我做了一堆谷歌搜索。关键字strictfp在野外非常罕见!