ruby - Ruby 循环直到设定时间,如果条件返回 false,则引发异常
问题描述
我试图循环到 10 秒,如果在 10 秒内返回 true,则中断循环。如果 10 秒后返回 false,则引发异常。
1.upto(2) do
loop do
if current_status == db_status
break
else !current_status == db_status
raise 'status is incorrect'
end
end
end
解决方案
我不太了解这1.upto(2)
部分,但根据您的描述,我猜这就是您要完成的任务,对吧?
start = Time.now
while (Time.now - start) < 10 do
break if current_status == db_status
end
raise 'status is incorrect' unless current_status == db_status
推荐阅读
- javascript - 如何在每次输入更改时获取现有缓存数据?
- flutter - 如何替换已弃用的列表
- python - 编写href时如何在jinja中使用flask变量
- clojure - 如何从 Clojure 中的指定点循环遍历集合?
- java - 同一资源中的Java线程同步问题
- react-native - 在 React Native App 中为导航容器添加渐变
- import - 从已删除状态导入资源后显示差异的 Terraform 计划
- c - 在 C 中,write() 返回错误的文件描述符错误
- java - 基于 Java 文本的游戏
- mercadopago - 如何测试mercadopago集成?