Sha256: 968d8b3f6ef462e2726b10309688874f4562d9c5f41bf92287bdcc9849e7f924
Contents?: true
Size: 1.06 KB
Versions: 4
Compression:
Stored size: 1.06 KB
Contents
require 'thread' require 'monitor' require 'set' require 'workers/version' require 'workers/exceptions' require 'workers/helpers' require 'workers/worker' require 'workers/pool' require 'workers/event' require 'workers/log_proxy' require 'workers/scheduler' require 'workers/bucket_scheduler' require 'workers/timer' require 'workers/periodic_timer' require 'workers/task' require 'workers/task_group' module Workers def self.pool lock do @pool ||= Workers::Pool.new end end def self.pool=(val) lock do @pool.dispose if @pool @pool = val end end def self.scheduler lock do @scheduler ||= Workers::Scheduler.new end end def self.scheduler=(val) lock do @scheduler.dispose if @scheduler @scheduler = val end end def self.map(inputs, options = {}, &block) return Workers::TaskGroup.new.map(inputs, options) do |i| yield(i) end end def self.lock(&block) (@lock ||= Monitor.new).synchronize { yield if block_given? } end end # Force initialization of defaults. Workers.lock
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
workers-0.6.1 | lib/workers.rb |
workers-0.6.0 | lib/workers.rb |
workers-0.5.0 | lib/workers.rb |
workers-0.4.0 | lib/workers.rb |