什么是以微秒为单位测量Java时间的最有效,"便宜"和准确的方法?

Ran*_*ber 0 java time-measurement

我正在使用ASM java字节码检测,我的目标是测量每次访问变量的时间.

**测量时间和记录**

**可变访问**

我正在寻找微秒的分辨率.它应该是准确的,因此足够"便宜"(意味着我不需要一个函数或一个需要10毫秒来获取时间的库).

我试过System.NanoTime()(太多,太昂贵)和Calendar(太松散),但我正在寻找一个更好的选择.

fmu*_*car 6

System.nanotime() 是一个本机方法调用,如果这对您来说太昂贵,那么您可能无法在java中找到适合您需求的东西.

我认为System.nanotime()永远不会花费10毫秒(除非你专门做一些事情只是为了减慢速度).

最后,我不确定微秒对于属性访问时间是否足够精确,纳秒可能更有用.