class ProgressBar::Throttle
Attributes
Public Class Methods
Source
# File lib/ruby-progressbar/throttle.rb, line 8 def initialize(options = {}) self.rate = options[:throttle_rate] || 0.01 self.started_at = nil self.stopped_at = nil self.timer = options.fetch(:throttle_timer, Timer.new) end
Public Instance Methods
Source
# File lib/ruby-progressbar/throttle.rb, line 15 def choke(options = {}) return unless !timer.started? || options.fetch(:force_update_if, false) || timer.elapsed_seconds >= rate timer.restart yield end