views:

131

answers:

1

I want to count the time elapsed between two events in nanoseconds. To do that, I can use System.nanoTime() as mentioned here. The problem is that the two events are happening in different threads.


Since nanoTime() doesn't return an absolute timestamp but instead can only be used to calculate time differences, I'd like to know if the values I get on the two different threads are consistent with the physical time elapsed between the two events.

+4  A: 

Looks like the answer is no, at least in some implementations.

Steven Schlansker
Also, I once got into trouble when setting `-XX:AggressiveOpts` on Sun JVM lead to unreliable values for System.nanoTime().
binil