Ruby睡到特定的时间

bra*_*r19 7 ruby sleep

我怎么写,我的代码睡眠时间不是5秒钟,而是直到达到机器上的某个时间.

不是这样的:

sleep(5)
Run Code Online (Sandbox Code Playgroud)

但是像这样:

now = DateTime.Now
while now != "14:40:03"
  sleep(0.5)
end
Run Code Online (Sandbox Code Playgroud)

这怎么回事?

saw*_*awa 19

require "time"
sleep(Time.parse("14:40:03") - Time.now)
Run Code Online (Sandbox Code Playgroud)