Integer 2038年1月19日之后会发生什么?

Integer 2038年1月19日之后会发生什么?,integer,epoch,Integer,Epoch,从大纪元开始 1970年1月1日00:00:00 计数到32位有符号整数所能达到的极限,我们达到计数时间极限的那一天(当然是在计算机中)是2038-1-19,正如马特·豪威尔斯在文章中给出的那样 以1970-1-1为历元的32位有符号整数可以表示2038-1-19年之前的日期,该日期将环绕到1901-12-13 如果它绕到一个回溯日期,那么什么是向前计算时间而不是绕到回溯日期的解决方案?如 2038年的问题没有通用的解决方案 我对此感到不舒服!对于这个问题的解决办法,必须有一些想法。我理解当初不

从大纪元开始

1970年1月1日00:00:00

计数到32位有符号整数所能达到的极限,我们达到计数时间极限的那一天(当然是在计算机中)是2038-1-19,正如马特·豪威尔斯在文章中给出的那样

以1970-1-1为历元的32位有符号整数可以表示2038-1-19年之前的日期,该日期将环绕到1901-12-13

如果它绕到一个回溯日期,那么什么是向前计算时间而不是绕到回溯日期的解决方案?如

2038年的问题没有通用的解决方案


我对此感到不舒服!对于这个问题的解决办法,必须有一些想法。我理解当初不使用64位整数的原因(这将给我们2920亿年的时间来放松!):当时没有多少机器能够(有可能?)处理64位整数。现在切换到64位整数也有它自己的问题。那么这个问题的解决方案是什么?

“现在切换到64位整数也有它自己的问题。”好吧,很久以前很多平台都是这样做的,通常使用毫秒分辨率而不是秒。基本上,任何仍然使用“自Unix时代以来的秒数”的东西都必须改变……哇,传奇人物@JonSkeet在评论我的问题!让我看看我今天做了什么好事!看在克努特的份上,把这个问题保密到2037年底。程序员解决Y2.038K问题的日费率将是天文数字!那将是机器升起的时候,不受我们时间戳的束缚!java(和许多其他语言一样)是。