Sun出品的XML Mark是我第一次接触performance test的内容,提到performance自然少不了记录时间,在XML Mark中Agent Thread在开始run的时候会用System.currentTimeMillis()记录当前时间,google一下,发现了下面这断文字:
Java 编程语言有一个计时方法,从早期版本起它就是标准 API 的一部分。 这个方法是 java.lang.System.currentTimeMillis(),它返回从 UTC 1970 年 1 月 1 日午夜开始经过的毫秒数。这个方法非常有用,特别 是它在各个版本的 Java 平台上都有。因此,在 上个月 我的 初始方面演示代码中,我使用了它。不过,currentTimeMillis() 也有 一些缺点。
currentTimeMillis() 的一个问题是,它虽然是以毫秒计数返回 时间,但是不能保证返回的计数的粒度或精度。在一些系统上,时间是真正的毫 秒计数,大约每一毫秒改变一次。在另一些系统上,时间可能每隔 10 或 20 毫秒才变一 次,因此每一次的精度都可能变化。
另一个局限是在方法定义中的基本时间单位。当 Java 平台第一次开始使用时,一毫秒 仍然是相当短的时间间隔(特别是对于解释语言)。今天,随着 CPU 时钟速度比第一次发布 Java 平台时快了近一百倍,一毫秒已经成了相对长的一段时间。
除了 currentTimeMillis() 的这些问题, 还有另一个使用任何类型的计时器方法监视程序执行都会有的问题。这个问题 是计时器方法本身 —— 可能要深入操作系统才能访问计时器 —— 这增加了一些开销, 如果计时器方法开销过大(或者方法调用过于频繁),那么就会严重扭曲计时测量。 为了明智地使用我们的性能跟踪方面,我需要至少大体知道计时器方法调用增加 了多少开销。
用CurrentTimeMillis方法检测一段程序代码运行时所花费的时间
Long startTime = System.currentTimeMillis();
...... // 代码段
Long endTime = Sytem.currentTimeMillis();
System.out.println(“Totle time is “ + (startTime - endTime) + “milliseconds“);
分享到:
相关推荐
在Java编程中,`System.currentTimeMillis()` 是一个非常重要的方法,用于获取系统当前的日期和时间。这个方法返回的是从1970年1月1日(UTC/GMT的午夜)开始到现在的毫秒数。这是一个长期通用的标准,用于表示时间的...
在Java编程中,System.currentTimeMillis() 是一个常用的方法,用于获取当前时间戳,即自1970年1月1日(UTC/GMT的午夜)以来的毫秒数。然而,在处理大量并发请求时,这个方法可能不再是最佳选择,因为它的性能表现...
可以使用 System.currentTimeMillis 方法来实现。 28. 如何获取某个日期是当月的最后一天?可以使用 Calendar 类来实现。 29. 如何格式化日期?可以使用 SimpleDateFormat 类来实现。 30. 编码转换,怎样实现将 ...
可以使用System类的currentTimeMillis方法来获取自1970年1月1日以来的毫秒数。 27. 如何获取某个日期是当月的最后一天? 可以使用Calendar类或者LocalDate类结合withDayOfMonth方法来获取。 28. 如何格式化日期? ...
23. currentTimeMillis方法:System类中的currentTimeMillis()方法返回的是当前时间距离1970年1月1日00:00:00 GMT的毫秒数。 24. 备注数据类型:在某些数据库管理系统中,备注数据类型允许存储最多64000个字符的...
23. currentTimeMillis方法:System类的currentTimeMillis方法返回的是当前时间距离1970年1月1日00:00:00 UTC的毫秒数。 24. int变量i的定义:i被初始化为6,这是一个整数变量。 以上是部分计算机二级考试题目的...
在上面的代码中,使用了 System.currentTimeMillis 方法来记录程序的执行时间,以便于对程序的性能进行优化。 ### 6. 文件路径 文件路径是指文件在文件系统中的路径。在 Java 中,可以使用 Java.IO 包中的 File 类...
### System类的currentTimeMillis方法 `System.currentTimeMillis()`方法用于获取当前时间戳(自1970年1月1日午夜起经过的时间,以毫秒为单位)。返回类型为`long`。 ### 计算机辅助制造(CAM) CAM(Computer ...
#### 题目23: System类中的currentTimeMillis方法 - **currentTimeMillis方法**: - `System.currentTimeMillis()`返回自1970年1月1日00:00:00 GMT以来的毫秒数,返回值类型为`long`。 #### 题目24: 程序设计语言...
在Java编程语言中,`System.currentTimeMillis()` 是一个非常基础且重要的方法,用于获取当前系统时间。这个方法返回从1970年1月1日0时0分0秒(协调世界时间,UTC)到现在的总毫秒数。这是一个非常常用的函数,尤其...
在上面的代码中,我们使用 System.currentTimeMillis() 方法获取当前时间的毫秒值,然后使用 SimpleDateFormat 将其格式化为字符串输出。 第三种:Calendar.getInstance() 使用 Calendar.getInstance() 方法可以...
例如,你可以模拟`System.currentTimeMillis()`来返回预设的时间值,以便控制测试环境中的时间变化。 2. **构造函数模拟** 对于那些内部依赖于私有或受保护构造函数的类,PowerMock可以创建新的实例,而无需实际...
1. **方法一:System.currentTimeMillis()** 这是最常见的时间戳获取方式,直接调用`System.currentTimeMillis()`即可得到当前时间距1970年1月1日00:00:00 UTC的毫秒数。这种方法简单且高效,通常情况下执行速度较...
4. **currentTimeMillis() 方法**:获取当前时间的毫秒数。 5. **nanoTime() 方法**:获取纳秒级别的当前时间。 #### 四、基本类型包装类常用方法 Java为每种基本数据类型都提供了对应的包装类,这些包装类不仅...
首先,我们可以使用Java内置的`System.currentTimeMillis()`或`nanoTime()`方法来获取当前时间点,以此作为计时起点。在方法执行完毕后,再获取一次当前时间,通过两者之差计算出方法的执行时间。例如: ```java ...
### 函数式接口、方法引用相关知识点解析 #### 一、函数式接口定义与实践 **函数式接口**(Functional Interface)是指一个接口只含有一个抽象方法,这种接口可以使用`@FunctionalInterface`注解来标记,从而确保...
- `onKeyDown`方法和`dispatchKeyEvent`方法都可以用来监听返回键的点击事件,但`dispatchKeyEvent`方法可以处理更多的键盘事件。 - 使用`System.exit(0)`可能会导致一些问题,比如未释放资源等。因此,在实际项目中...
默认 kotlin 中对一段代码或方法的耗时计算提供了内置 inline 函数,我们使用方式如下(需要修改代码逻辑): val timeCost = measureTimeMillis { //logic } print("time cost is: $timeCost") 使用此插件后我们...
`System.currentTimeMillis()` 方法返回的就是这样的一个long类型的数值。然而,当你需要将这个long类型的时间戳转换为int类型时,可能会遇到数据溢出的问题,因为int类型的存储空间只有32位(4个字节),而long类型...
Java生成随机数的常用方法分析 在 Java 编程中,生成随机数是非常常见的需求,例如在测试、模拟、游戏等场景中。随机数可以使用多种方法生成,本文将对 Java 生成随机数的常用方法进行分析。 1. 使用 Math.random...