03 - running periodic tasks without cron or at.rb
来自「O Reilly Ruby Cookbook source code」· RB 代码 · 共 32 行
RB
32 行
#!/usr/bin/ruby# lunchtime.rbdef background_run_at(time) fork do sleep(1) until Time.now >= time yield endendtoday = Time.nownoon = Time.local(today.year, today.month, today.day, 12, 0, 0)raise Exception, "It's already past lunchtime!" if noon < Time.nowbackground_run_at(noon) { puts "Lunchtime!" }#---#!/usr/bin/ruby# reminder.rbdef background_every_n_seconds(n) fork do loop do before = Time.now yield interval = n-(Time.now-before) sleep(interval) if interval > 0 end endendbackground_every_n_seconds(15*60) { puts 'Get back to work!' }#---
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?