2038 问题

生活中很有意思的一个问题,细究起来可能是自己未知的一块领域,比如2038问题。

上图

"2038"

它背后究竟蕴含着怎样的道理?难道手机有问题?到了2038年之后这手机怎么办?怎么解决这个问题?

看看维基百科是怎么解释这个问题的 2038年问题

"倒计时"

这么一想可能是多虑了,到那时候32位的系统还存在吗?

著名的snowflake算法中,时间戳用41位表示,如果以1970年1月1日 0时0分0秒开始,作为起始时间,该算法最长能用的时间为: (1L << 41) / (1000L * 60 * 60 * 24 * 365) = 69年

但实际上我们的开始时间应该不会设置为默认的,也就是说中间41位的数值时由当前时间—起始时间形成的差值。

See also