[ruby-core:88680] Re: [Ruby trunk Misc#15014] thread.c: use rb_hrtime_scalar for high-resolution time operations

From: Eric Wong <normalperson@...>
Date: 2018-08-27 09:17:43 UTC
List: ruby-core #88680
Koichi Sasada <ko1@atdot.net> wrote:
> On 2018/08/27 16:16, Eric Wong wrote:
> > Yep.  Maybe some small systems can benefit with
> > usec/msec resolution and uint32_t, though.
> 
> My comment is, if it assumes uint64_t, it is worth to write it explicitly (I
> verified this years with `2^64/ (1000 * 1000 * 1000 * 60 * 60 * 24 * 365)`
> on google, but it will help for readers).

OK, I made r64554

> > > > MY_RUBY_BUILD_MAY_TIME_TRAVEL
> > > 
> > > what is this?
> > 
> > A joke; at least as far as we know it is a joke :>
> 
> I'm not sure why uint64_t doesn't solve time machine problem and uint128_t
> solves it. Any RFC arguing it? (time machines should not leap 1.0790283e+22
> years)?

It delays the onset of the problem.  585 years well within the
known range of human history; but 1.0790283e+22 years is much
farther away (probably beyond lifespan of the universe).

On the other hand, I don't know how a monotonic clock behaves
when a computer travels through time :>

> Beside joking, I misunderstand that some systems can change the machine time
> (time machine may means it) which affect monotonic time, and I could not
> understand why uint128 can solve such system issue.

Right, if monotonic time goes out of uint64_t range, things will
break.  Maybe int128 can hide the problem.  But I don't think
it's something we need to care about, though (OS would be
broken, I think).

Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

In This Thread