以微秒精度获取两个DateTime之间的差异

时间:2018-02-17 00:01:33

标签: date datetime time elixir

在Elixir中,您可以使用:calendar.datetime_to_gregorian_seconds/1将Erlang时间转换为自Epoch以来的秒数。问题是,只需几秒钟,您就可以区分同一秒内发生的两个事件。

DateTime结构,我的日期是实例, 存储日期的微秒组件,但是没有给我一个简单的方法来找到它们之间的区别两次。

是否有人知道某种方式(最好不使用库)来找出两个DateTime之间的差异(以微秒为单位)?

1 个答案:

答案 0 :(得分:2)

:microseconds选项传递给DateTime.diff/3

iex(1)> x1 = DateTime.utc_now()
#DateTime<2018-02-17 06:27:33.291406Z>

iex(2)> x2 = DateTime.utc_now()
#DateTime<2018-02-17 06:27:39.692571Z>

iex(3)> DateTime.diff(x2, x1, :microseconds)
6401165