web-dev-qa-db-ja.com

ある程度の時間待つようにRubyプログラムに指示する

次のコード行に進む前に、Rubyプログラムに任意の時間待機するように指示するにはどうすればいいですか?

371
user94154

このような:

sleep(num_secs)

num_secs値は整数または浮動小数点数です。

また、これをRailsアプリケーション内で作成している場合、またはプロジェクトにActiveSupportライブラリを含めている場合は、次の便利な構文を使用してより長い間隔を構築できます。

sleep(4.minutes)
# or, even longer...
sleep(2.hours); sleep(3.days) # etc., etc.
# or shorter
sleep(0.5) # half a second
596
rcoder

次のように sleep を使用します。

sleep 2

それは2秒間眠ります。

議論をするように注意してください。 sleepを実行するだけでは、プロセスは永遠にスリープします。 (これは、スレッドが起きるまでスレッドをスリープさせたい場合に便利です。)

110

sleep 6は6秒間スリープします。より長い期間では、sleep(6.minutes)またはsleep(6.hours)を使うこともできます。

2
vijaya chowdary

私はuntilが睡眠に非常に役立つと思います。例:

> time = Time.now
> sleep 2.seconds until Time.now > time + 10.seconds # breaks when true
0
Varun Garg