在我们的项目中,经常会用到log,很不起眼的东西,但他对程序的性能来说影响却是非常巨大,下面简单用控制台输出测试记录日志和不记录日志的性能差异:
int count = 10000 * 100;
long startTime = System.currentTimeMillis();
for (int i = 0; i < count; i++) {
}
long elapsedTimeWithOutOutPut = System.currentTimeMillis() - startTime;
startTime = System.currentTimeMillis();
for (int i = 0; i < count; i++) {
System.out.println("Test output!");
}
long elapsedTimeWithOutPut = System.currentTimeMillis() - startTime;
System.out.println("elapsedTimeWithOutOutPut: " + elapsedTimeWithOutOutPut);
System.out.println("elapsedTimeWithOutPut: " + elapsedTimeWithOutPut);
System.out.println(elapsedTimeWithOutPut / elapsedTimeWithOutOutPut + " Times");
输出结果:
...
Test output!
Test output!
Test output!
elapsedTimeWithOutOutPut: 3
elapsedTimeWithOutPut: 13518
4506 Times
如果换成真正的文件IO操作记录日志,对性能的影响可想而知,所以,在我们业务处理时,在真正需要记录日志时记录日志;在系统上线运行时,仔细考虑log输出的等级,error,debug,info...
分享到:
相关推荐
在IT领域,特别是软件开发与优化过程中,测试程序运行效率是一项至关重要的技能。这不仅关系到软件的性能表现,还直接影响用户体验以及系统的整体资源利用效率。以下是对标题、描述及部分代码内容所涉及的关键知识点...
例如,一个简单的任务可能要求学生编写一个程序,该程序接受用户输入的一组数字,然后使用`print`和`println`来打印这些数字的总和、平均值和最大值。这将需要学生对数据类型的转换、算术运算以及数组操作有深入的...
* JRE系统库目录:存放程序运行必须的系统库文件 * src目录:存放包和源文件 公有类 HelloWorld: * public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!!!...
JAVA 程序设计之 switch 语句应用 在 JAVA 程序设计中,switch 语句是一种非常常见的选择语句。与 if 条件语句不同,switch 语句只能针对某个表达式的值做出判断,从而决定执行哪一段代码。在 switch 语句中,使用 ...
System.out.println("--------------------------欢迎使用万年历程序----------------------"); System.out.print("请输入年份:"); int year=input.nextInt(); System.out.print("\n请输入月份:"); int month=...
在JAVA程序设计中,用户交互是程序与使用者之间进行沟通的关键环节。OCJA(Oracle Certified Java Associate)认证正是为了检验开发者对于Java基础知识的掌握程度,其中包括用户交互程序设计这一重要部分。下面我们...
Java编程语言中的循环是程序设计中的重要组成部分,它允许我们执行特定代码...同时,合理使用break和continue可以优化循环逻辑,提高代码效率。通过理解和熟练运用这些循环结构,可以更有效地解决编程中的重复性任务。
在Java程序设计中,选择结构语句是编程中不可或缺的一部分,它们允许我们根据特定条件执行不同的代码块。OCJA(Oracle Certified Java Associate)认证是针对初级Java程序员的基础认证,其中涵盖了包括if…else if…...
在本Java程序设计课程中,我们关注的是"商场购物清单打印"这个综合实训项目,它旨在...记住,实践是检验理论知识的最好方式,动手编写代码并运行测试,不断调整优化,直至实现功能完善且符合需求的购物清单打印程序。
1. **Java程序设计的基本步骤**:包括源代码编写、编译以及运行。 2. **环境配置**:设置`classpath`环境变量。 3. **Java源文件与字节码文件的扩展名**:了解`.java`和`.class`的区别。 4. **Java类的定义**:包括...
并发(Concurrency)是指多个线程同时执行的能力,它可以提高程序的效率和响应速度。在Java中,线程可以通过Thread类或Runnable接口来实现。 Runnable接口是Java.lang包中的一部分,它定义了一个run()方法,该方法...
在Java编程语言中,流程控制是编写程序时不可或缺的一部分,它决定了代码的执行顺序和条件。本教程将深入探讨Java中的流程控制结构,包括顺序控制、选择控制(条件语句)和循环控制,帮助你更好地理解和运用这些概念...
- **多线程**: Java支持并发执行多个线程,从而提高程序的执行效率。 - **Java程序开发过程**: 1. **编写源代码**: 使用文本编辑器或者集成开发环境(IDE)来编写Java源代码。 2. **编译**: 将源代码编译成字节码...
统一管理日志打印与通过System.out.println();打印
- Java程序是跨平台的,运行在Java虚拟机(JVM)上,与硬件平台无关(B选项正确,D选项错误)。 - Java不支持指针,而是通过引用进行内存管理(C选项正确)。 - Java支持多线程编程(A选项正确)。 - Java采用...
在标题和描述中提到的"截出程序运行结果"部分,这通常是指收集并处理程序执行过程中的输出信息。上面的代码已经展示了如何读取和打印程序的输出。如果你需要将结果存储到文件或进行其他处理,只需改变`System.out....