我有一个网络应用程序,假设允许用户设置计时器,它会在时间到时通知他们(通过推送通知)。用户也可以随时取消这些计时器。
有没有宝石已经这样做了?我需要它能够动态分配时间并传递一个块,以确定当时的操作。此外,我能够取消执行特定的块非常重要。
答案 0 :(得分:1)
尝试timers
gem。
使用Timers.new创建一个新的计时器组:
require 'timers'
timers = Timers.new
使用Timers#after:
安排proc在5秒后运行five_second_timer = timers.after(5) { puts "Take five" }
five_second_timer
变量现在绑定到Timers::Timer
对象。要取消计时器,请使用Timers::Timer#cancel
有关详情,请查看以下自述文件: https://github.com/celluloid/timers