32 位 ruby 1.9.2p290(我必须使用)似乎很难将当前时间增加 25(但不是 24!)年。
now = Time.now
more_time = (24*365*24*60*60)
puts "more_time.class = #{more_time.class}"
later = now + more_time
now = Time.now
more_time = (25*365*24*60*60)
puts "more_time.class = #{more_time.class}"
later = now + more_time
产生:
more_time.class = Fixnum
more_time.class = Fixnum
ruby_time.rb:11:in `+': time + 788400000.000000 out of Time range (RangeError) from ruby_time.rb:11
我遇到了 2038 年的问题吗?我对 64 位 ruby 1.9.2-p290 没有这个问题。