如何告诉Ruby程序在继续下一行代码之前等待任意数量的时间?
当前回答
像这样
睡眠(no_of_seconds)
或者你可以传递其他可能的参数,比如:
睡眠(5.秒)
睡眠(5.分钟)
睡眠(5.小时)
睡眠(5.天)
其他回答
像这样使用睡眠:
sleep 2
它会休眠2秒。
提出论点时要小心。如果只是运行sleep,进程将永远处于休眠状态。(当你想让线程休眠直到被唤醒时,这很有用。)
是这样的:
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
这是一个在sidekiq中使用sleep的例子
require 'sidekiq'
class PlainOldRuby
include Sidekiq::Worker
def perform(how_hard="super hard", how_long=10)
sleep how_long
puts "Workin' #{how_hard}"
end
end
睡10秒钟,然后打印出“工作非常努力”。
Sleep 6会睡6秒。对于更长的时间,你也可以使用睡眠(6分钟)或睡眠(6小时)。
像这样
睡眠(no_of_seconds)
或者你可以传递其他可能的参数,比如:
睡眠(5.秒)
睡眠(5.分钟)
睡眠(5.小时)
睡眠(5.天)
推荐文章
- JavaScript中有睡眠/暂停/等待功能吗?
- 是否可以在MiniTest中运行单个测试?
- 如何在Ruby中生成a和b之间的随机数?
- 无法安装gem -未能建立gem本地扩展-无法加载这样的文件——mkmf (LoadError)
- 如何在Ruby中创建文件
- 什么是Ruby文件。开放模式和选项?
- Ruby数组到字符串的转换
- 如何分割(块)一个Ruby数组成X元素的部分?
- Ruby中“or”和||的区别?
- 如何测试参数是否存在在轨道
- 在Ruby中不创建新字符串而修饰字符串的规范方法是什么?
- RVM不是一个函数,用' RVM use…’不会起作用
- 了解Gemfile。锁文件
- 如何确定一个数组是否包含另一个数组的所有元素
- 是什么导致这个ActiveRecord::ReadOnlyRecord错误?