Magicode logo
Magicode
1 min read

coffeeでnano秒計測

https://cdn.apollon.ai/media/notebox/6a6332c1-0b55-4662-aa88-8a6b4e418e4c.jpeg


私は仕事柄いろんな隔離された空間で作業をします。
物理的にも、電信的にも、パケット的にも、デジタルにもアナログにも外界から遮断されたようなレギュレーションが必要な。
なので、「あ!あの関数使いたい・・・」ってなっても入手手段がなかったりし。
なので、とある現場で作ったアレが他の現場でもほしいとなったので、メモ書きしたいなと思いました。

hrtime


nano = process.hrtime()

process.nextTick ->
  diff = process.hrtime(nano)
  console.log diff[0] * 1e9 + diff[1]
とやりますと
4675800
とでます。
こんなかんじでおk

補足説明


diffは
 [ 42, 3412400 ] 
という配列が返却されます。diff[0]は秒、diff[1]はナノ秒を表しています。
なので、diff[0]に1e9、1000000000を掛け算してあげると、ちょうどいい具合に値が取得できます。
ちなみにWin系だと下2桁が00になってしまうのでビミョーではあります。 その場合はドキュメントの通り
diff[0] * 1000 + diff[1] / 1000000
とやってあげることで
42003.4124
というようなミリ秒単位で表現できます。
ちなみにhrはハイレゾという意味だそうで。

Discussion

コメントにはログインが必要です。