System.currentTimeMillis() 何时会溢出?
我有一个Web应用程序,它使用时间戳对东西进行排序,这只是一个很长的时间。我的Web应用程序后端恰好是用java编写的,所以我正在使用:
long timestamp = System.currentTimeMillis();
这将在哪一年(大约)失败?我的意思是,在某个时候,多头的范围会溢出,对吧?我们可能都早就死了,但我只是好奇。它会再次像y2k一样吗?我能做些什么来为此做准备?荒谬,我知道,只是好奇!
我有一个Web应用程序,它使用时间戳对东西进行排序,这只是一个很长的时间。我的Web应用程序后端恰好是用java编写的,所以我正在使用:
long timestamp = System.currentTimeMillis();
这将在哪一年(大约)失败?我的意思是,在某个时候,多头的范围会溢出,对吧?我们可能都早就死了,但我只是好奇。它会再次像y2k一样吗?我能做些什么来为此做准备?荒谬,我知道,只是好奇!
它将溢出
System.out.println(new Date(Long.MAX_VALUE));
哪些印刷品
Sun Aug 17 03:12:55 GMT-04:00 292278994
因此,在超过2.92亿年之后。我想说的是,与此同时,有足够的时间来发明一个解决方案。说实话,我不指望人类能活下来。与世界年龄相比,我们只存在几秒钟,以小时为单位,这不会花很长时间。
请尝试运行以下代码:
System.out.println(new Date(Long.MAX_VALUE));
哪个会根据您的区域设置打印类似的东西:
Sun Aug 17 17:12:55 EST 292278994
很长一段时间,所以不用担心溢出。