Rails / Sinatra gem用于时间警报

时间:2013-04-09 17:00:00

标签: ruby-on-rails ruby sinatra

我有一个网络应用程序,假设允许用户设置计时器,它会在时间到时通知他们(通过推送通知)。用户也可以随时取消这些计时器。

有没有宝石已经这样做了?我需要它能够动态分配时间并传递一个块,以确定当时的操作。此外,我能够取消执行特定的块非常重要。

1 个答案:

答案 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