小编Prz*_*iak的帖子

JMH使用java 17,无死代码消除

我运行示例 JHM 基准测试,它应该显示死代码消除。为了简洁起见,代码是从jhm github 示例重写的。

\n
import org.openjdk.jmh.annotations.*;\nimport java.util.concurrent.TimeUnit;\n\n@State(Scope.Thread)\n@BenchmarkMode(Mode.AverageTime)\n@OutputTimeUnit(TimeUnit.NANOSECONDS)\n@Fork(1)\npublic class Sample08DeadCode {\n\n    private double x = Math.PI;\n\n    @Benchmark\n    public void benchmark() {}\n\n    @Benchmark\n    public void measureIncorrect() { Math.log(x); }\n\n    @Benchmark\n    public double measureCorrect() { return Math.log(x); }\n}\n
Run Code Online (Sandbox Code Playgroud)\n

使用 JDK 1.8.0_211、Java HotSpot(TM) 64 位服务器 VM 25.211-b12 运行会产生以下结果:

\n
Benchmark                          Mode  Cnt   Score   Error  Units\nSample08DeadCode.benchmark         avgt    5   0,229 \xc2\xb1 0,018  ns/op\nSample08DeadCode.measureCorrect    avgt    5  12,013 \xc2\xb1 0,047  ns/op\nSample08DeadCode.measureIncorrect  avgt    5   0,228 \xc2\xb1 0,016  ns/op\n
Run Code Online (Sandbox Code Playgroud)\n

但使用 java JDK 17.0.2、Java HotSpot(TM) …

java jmh

9
推荐指数
1
解决办法
629
查看次数

如何识别场景中节点边界的变化?

假设我有一些 TextField 放置在窗格布局结构的深处。我想添加侦听器或以某种方式识别 TextField 更改了其在场景中的位置 (x, y)。问题是 - 我怎样才能以正确的、可重用的方式实现它?

我提供一些测试代码。要重新创建,请拖动舞台边框,这将导致 TextField 位置发生变化。

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.TextField;
import javafx.scene.layout.HBox;
import javafx.scene.layout.Region;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

public class App extends Application {

    public static void main(String[] args) {
        launch(args);
    }

    @Override
    public void start(Stage stage) throws Exception {
        TextField textField = new TextField();
        Button button = new Button("Button");

        HBox hBox = new HBox(textField, button);
        hBox.setMaxSize(Region.USE_PREF_SIZE, Region.USE_PREF_SIZE);

        StackPane stackPane = new StackPane(hBox);
        stackPane.setPrefSize(600., 400.);
        Scene scene = new Scene(stackPane); …
Run Code Online (Sandbox Code Playgroud)

javafx

2
推荐指数
1
解决办法
257
查看次数

标签 统计

java ×1

javafx ×1

jmh ×1