class Bundler::ParallelWorkers::Worker
def deq
def deq result = @response_queue.deq if WrappedException === result raise result.exception end result end
def enq(obj)
- 
        obj(String) -- mostly it is name of spec that should be downloaded
def enq(obj) @request_queue.enq obj end
def initialize(size, func)
- 
        func(Proc) -- job to run in inside the worker pool
- 
        size(Integer) -- Size of pool
def initialize(size, func) @request_queue = Queue.new @response_queue = Queue.new prepare_workers size, func prepare_threads size end
def prepare_threads(size)
def prepare_threads(size) end
def stop
def stop stop_threads stop_workers end
def stop_threads
Stop the worker threads by sending a poison object down the request queue
def stop_threads @threads.each do @request_queue.enq POISON end @threads.each do |thread| thread.join end end
def stop_workers
def stop_workers end