【发布时间】:2019-12-19 10:24:15
【问题描述】:
在我的应用程序中,我需要设置操作超时。感谢 Timex 库,这很容易做到。
很遗憾,我遇到了一个奇怪的错误。我挖了它,发现了这个:
iex(55)> dt = Timex.now() |> Timex.add( Timex.Duration.from_seconds( 10))
#DateTime<2017-12-13 18:32:30.922418Z>
iex(56)> DateTime.utc_now()
#DateTime<2017-12-13 18:32:22.411246Z>
iex(57)> dt <= DateTime.utc_now()
false
iex(58)> dt <= DateTime.utc_now()
false
iex(59)> dt <= DateTime.utc_now()
false
iex(60)> dt <= DateTime.utc_now()
false
iex(61)> dt <= DateTime.utc_now()
false
iex(62)> dt <= DateTime.utc_now()
false (!)
iex(63)> dt <= DateTime.utc_now()
true (!)
iex(64)> dt <= DateTime.utc_now()
false (!)
iex(65)> dt <= DateTime.utc_now()
false
iex(66)> dt <= DateTime.utc_now()
false
我做错了什么?它是一个错误,还是它应该是这样的? 在 Elixir 中比较两个日期时间的正确选择是什么?
PS>我正在使用 Elixir 1.5.2。
Erlang/OTP 20 [erts-9.0.1] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:10] [hipe] [kernel-poll:false]
【问题讨论】: