[英]System.currentTimeMillis measuring time
当我使用System.currentTimeMillis()
测量时间时,是否安全?
例如,当发生时间偏移(夏季->冬季时间)时,会产生错误吗?
不, System.currentTimeMillis()
返回自Unix时代(UTC 1970年1月1日午夜)起经过的毫秒数。 这完全不取决于您所在的时区。
换句话说,如果您每秒调用一次,它将始终增加大约1000(“大约”仅是由于时钟精度和呼叫不可能完全相隔1秒)。 无论您的本地时区更改其与UTC的偏移量,还是更改整个时区都没有关系-这将是无关紧要的。
从理论上讲,leap秒让所有这些事情变得棘手-但实际上,大多数应用程序都可以通过将手指伸入耳朵并说“我不在家而成为Leap Second先生”而摆脱困境。
System.currentTimeMillis()
将返回自纪元(1/1/1970 00:00:00)以来的毫秒数。 如何解释这些是完全不同的故事(夏/冬时间以及时区属于解释部分)。 是的,这样可以节省。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.