转自
http://blog.csdn.net/wutianyin222/article/details/8853958
System.currentTimeMillis() 系统时间,也就是日期时间,可以被系统设置修改,然后值就会发生跳变。
uptimeMillis 自开机后,经过的时间,不包括深度睡眠的时间
elapsedRealtime自开机后,经过的时间,包括深度睡眠的时间
所以System.currentTimeMillis()不适合计算时间间隔,eg,
now = System.currentTimeMillis()
//do something...
duration = System.currentTimeMillis() -now;
如果在do something的时候,改变了系统时间,那么 获取duration就不准了。通常在比较小的时间里,(毫秒级,秒级)一般不会有什么问题,系统时间可能不会改变。但是如果时间很长的话,那就保证不了了
uptimeMillis由于不计算睡眠时间,所以非常适合做一些特殊的时间间隔计算
elapsedRealtime 包括睡眠时间,适用于任何情况下的时间间隔计算
分享到:
相关推荐
在高并发场景下,System.currentTimeMillis() 的性能问题是一个值得深入探讨的话题。在Java编程中,System.currentTimeMillis() 是一个常用的方法,用于获取当前时间戳,即自1970年1月1日(UTC/GMT的午夜)以来的...
long haomiao = System.currentTimeMillis(); int b = (int)((haomiao/1000)%26+65); char daxiezimu = (char)b; System.out.println(haomiao); System.out.println(daxiezimu); } }
在Java编程中,`System.currentTimeMillis()` 是一个非常重要的方法,用于获取系统当前的日期和时间。这个方法返回的是从1970年1月1日(UTC/GMT的午夜)开始到现在的毫秒数。这是一个长期通用的标准,用于表示时间的...
在Java编程语言中,`System.currentTimeMillis()` 是一个非常基础且重要的方法,用于获取当前系统时间。这个方法返回从1970年1月1日0时0分0秒(协调世界时间,UTC)到现在的总毫秒数。这是一个非常常用的函数,尤其...
SystemClock.elapsedRealtime() SystemClock.currentThreadTimeMillis 0、时间的单位: 秒:second 毫秒:Millisecond 微妙:Microsecond 纳秒:nanosecond 1秒 = 1000毫秒;1毫秒=1000微秒, 1微
互联网资讯,技术简介,IT、AI技术,人工智能互联网资讯,技术简介,IT、AI技术,人工智能互联网资讯,技术简介,IT、AI技术,人工智能互联网资讯,技术简介,IT、AI技术,人工智能互联网资讯,技术简介,IT、AI技术...
long timenow = System.currentTimeMillis(); for (String str : strs) { count++; } return System.currentTimeMillis() - timenow; } 2.比较慢 private long getTime2() { long time = 0; int...
图文并茂吃透面试题,看完这个,吊打面试官,拿高薪offer!
例如,你可以模拟`System.currentTimeMillis()`来返回预设的时间值,以便控制测试环境中的时间变化。 2. **构造函数模拟** 对于那些内部依赖于私有或受保护构造函数的类,PowerMock可以创建新的实例,而无需实际...
为了解决 `System.currentTimeMillis()` 的局限性,Java 提供了 `System.nanoTime()` 方法来获取比毫秒更精确的时间。该方法返回自某个固定点以来的纳秒数,通常用于测量时间差,而不是绝对时间。需要注意的是,虽然...
long start = System.currentTimeMillis(); int a = 0; for(int i=0;i;i++){ try { a++; }catch (Exception e){ e.printStackTrace(); } } long useTime = System.currentTimeMillis()-start; System.out...
long lasttick = System.currentTimeMillis(); GB2312Helper gb2312Helper = GB2312Helper.singleton(); String info1 = "测试汉字拼音和五笔"; CharacterRecord recs1[] = gb2312Helper.getRecords(info1);...
long beginTime = System.currentTimeMillis(); InputStream is = null; String ret = null; try { is = new BufferedInputStream( new FileInputStream(f) ); long contentLength = f.length(); ...
`System.currentTimeMillis()`函数是Java提供的一个基础时间测量工具,它返回自1970年1月1日午夜(UTC)以来的毫秒数。然而,这个方法并不提供微秒级别的精度,因此在连续多次调用之间可能会存在不精确性。为了获得...
val start = System.currentTimeMillis() //logic val end = System.currentTimeMillis() val time = end - start println("[MTC] cost time:$time") } 本地调试模式下运行可以执行以下命令: ./gradlew :...
long start = System.currentTimeMillis(); fcin.transferTo(0, fileLength, fcout); fin1.close(); fout1.close(); long end = System.currentTimeMillis(); long time1 = end - start; System.out.println("NIO_...
Java中System类还提供了许多其他的方法和变量,例如,System.currentTimeMillis()方法可以获取当前时间的毫秒数,System.getProperty()方法可以获取系统的属性信息,等等。 在编程中,System类非常重要,很多应用...
这是最常见的时间戳获取方式,直接调用`System.currentTimeMillis()`即可得到当前时间距1970年1月1日00:00:00 UTC的毫秒数。这种方法简单且高效,通常情况下执行速度较快。 2. **方法二:Calendar.getInstance()....
首先,我们可以使用`System.currentTimeMillis()`方法来获取当前时间(单位为毫秒)作为基准点,然后在程序执行完毕后再获取一次时间,通过两者之差即可计算出程序的运行时间。例如: ```java long startTime = ...
Java 计算程序代码执行时间的方法可以使用 System.currentTimeMillis() 方法和 System.nanoTime() 方法来记录程序的开始和结束时间,从而计算出程序的执行时间。这些方法对于排查性能问题、优化代码执行效率和 debug...