gpt4 book ai didi

java - 关于编码时要保留的性能优化技术

转载 作者:行者123 更新时间:2023-12-01 15:13:33 25 4
gpt4 key购买 nike

当我正在研究通过在一段代码上使用 System.currentTimeinMillis() 来测量 Java 中经过的执行时间时,如果下面显示的代码,但我的查询是我们在编码时除了测量之外还应该记住的其他性能技术当时,我的查询更多地集中在性能优化技术上。

    public class MeasureTimeExampleJava {



public static void main(String args[]) {

//measuring elapsed time using System.nanoTime
long startTime = System.nanoTime();
for(int i=0; i< 1000000; i++){
Object obj = new Object();
}
long elapsedTime = System.nanoTime() - startTime;

System.out.println("Total execution time to create 1000K objects in Java in millis: "
+ elapsedTime/1000000);

//measuring elapsed time using Spring StopWatch
StopWatch watch = new StopWatch();
watch.start();
for(int i=0; i< 1000000; i++){
Object obj = new Object();
}
watch.stop();
System.out.println("Total execution time to create 1000K objects in Java using StopWatch in millis: "
+ watch.getTotalTimeMillis());
}

}

Output:
Total execution time to create 1000K objects in Java in millis: 18
Total execution time to create 1000K objects in Java using StopWatch in millis: 15

最佳答案

以下是我在尝试优化代码时所采取的步骤:

  • 使用架构/设计的最佳实践
  • 编写易于维护的代码
  • 使用分析器测量结果
  • 仅优化分析器认为需要注意的部分代码
  • 只花时间优化那些会影响程序实际用户的事情

我的分析器将向我展示感兴趣的各个领域

  • CPU 热点
  • 内存使用过多(可能表现为大量 GC 和/或大量交换)
  • IO 过多(磁盘、网络)

关于java - 关于编码时要保留的性能优化技术,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11973340/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com