Sha256: a0f89918c74e61d446a44e9101513a015e6e0ae4e991b966f65fc829bdc788a2

Contents?: true

Size: 844 Bytes

Versions: 1

Compression:

Stored size: 844 Bytes

Contents

require 'thread'
require 'monitor'
require 'set'

require 'workers/version'
require 'workers/helpers'
require 'workers/worker'
require 'workers/pool'
require 'workers/event'
require 'workers/log_proxy'
require 'workers/scheduler'
require 'workers/timer'
require 'workers/periodic_timer'
require 'workers/task'
require 'workers/task_group'

module Workers
  def self.pool
    return @pool ||= Workers::Pool.new
  end

  def self.pool=(val)
    @pool.dispose if @pool
    @pool = val
  end

  def self.scheduler
    return @scheduler ||= Workers::Scheduler.new
  end

  def self.scheduler=(val)
    @scheduler.dispose if @scheduler
    @scheduler = val
  end

  def self.map(vals, &block)
    return Workers::TaskGroup.new.map(vals) do |v|
      block.call(v)
    end
  end
end

# Force initialization of defaults.
Workers.pool
Workers.scheduler

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
workers-0.1.4 lib/workers.rb