Sha256: 5b83013e80cd1ab0fc27581d1d62aeca11917a9d691382e191db65df920ceba1

Contents?: true

Size: 625 Bytes

Versions: 54

Compression:

Stored size: 625 Bytes

Contents

require 'concurrent/configuration'
require 'thread'

module Concurrent

  # Perform the given operation asynchronously after the given number of seconds.
  #
  # @param [Fixnum] seconds the interval in seconds to wait before executing the task
  #
  # @yield the task to execute
  #
  # @return [Boolean] true
  def timer(seconds, *args, &block)
    raise ArgumentError.new('no block given') unless block_given?
    raise ArgumentError.new('interval must be greater than or equal to zero') if seconds < 0

    Concurrent.configuration.global_timer_set.post(seconds, *args, &block)
    true
  end
  module_function :timer
end

Version data entries

54 entries across 54 versions & 1 rubygems

Version Path
concurrent-ruby-0.8.0 lib/concurrent/utility/timer.rb
concurrent-ruby-0.8.0-java lib/concurrent/utility/timer.rb
concurrent-ruby-0.7.2 lib/concurrent/utility/timer.rb
concurrent-ruby-0.7.2-x86_64-linux lib/concurrent/utility/timer.rb
concurrent-ruby-0.7.2-x86-solaris-2.11 lib/concurrent/utility/timer.rb
concurrent-ruby-0.7.2-x86-mingw32 lib/concurrent/utility/timer.rb
concurrent-ruby-0.7.2-x86-linux lib/concurrent/utility/timer.rb
concurrent-ruby-0.7.2-x64-mingw32 lib/concurrent/utility/timer.rb
concurrent-ruby-0.7.2-java lib/concurrent/utility/timer.rb
concurrent-ruby-0.8.0.pre2 lib/concurrent/utility/timer.rb
concurrent-ruby-0.8.0.pre2-java lib/concurrent/utility/timer.rb
concurrent-ruby-0.8.0.pre1 lib/concurrent/utility/timer.rb
concurrent-ruby-0.8.0.pre1-java lib/concurrent/utility/timer.rb
concurrent-ruby-0.7.1 lib/concurrent/utility/timer.rb
concurrent-ruby-0.7.1-x86_64-linux lib/concurrent/utility/timer.rb
concurrent-ruby-0.7.1-x86-solaris-2.11 lib/concurrent/utility/timer.rb
concurrent-ruby-0.7.1-x86-mingw32 lib/concurrent/utility/timer.rb
concurrent-ruby-0.7.1-x86-linux lib/concurrent/utility/timer.rb
concurrent-ruby-0.7.1-x64-mingw32 lib/concurrent/utility/timer.rb
concurrent-ruby-0.7.1-java lib/concurrent/utility/timer.rb