Qui peut expliquer cette difference de temps ?
Qui peux expliquer ceci ???
Code:
1 2 3 4 5 6 7 8 9
|
final ThreadMXBean threadMXBean = ManagementFactory.getThreadMXBean();
final long startNanoSystem = System.nanoTime();
final long start = threadMXBean.getCurrentThreadCpuTime();
long stop;
while ((stop = threadMXBean.getCurrentThreadCpuTime()) == start);
final long stopNanoSystem = System.nanoTime();
System.out.println("Resolution : " + (stop - start) + "ns - " + ((stop - start)/(1000L*1000L)) + "ms");
System.out.println("Resolution Nano System: " + (stopNanoSystem - startNanoSystem) + "ns - " + ((stopNanoSystem - startNanoSystem)/(1000L*1000L)) + "ms"); |
Resolution : 15600100ns - 15ms
Resolution Nano System: 810029ns - 0ms
En toute logique, "Resolution" devrait être inférieur que "Resolution Nano System" mais ce n'est pas le cas !
Merci pour votre aide.
PS: Le code orignal qui m'a inspiré ce trouve sur ce blog: http://snippets.hoydaa.org/simple-st...al-thread-time