Class: Gem::Src::Srv::Worker

Inherits:
Object
  • Object
show all
Defined in:
lib/gem/src/srv/worker.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(queue) ⇒ Worker

Returns a new instance of Worker.



9
10
11
# File 'lib/gem/src/srv/worker.rb', line 9

def initialize(queue)
  @queue = queue
end

Class Method Details

.start(queue) ⇒ Object



3
4
5
6
7
# File 'lib/gem/src/srv/worker.rb', line 3

def self.start(queue)
  Configuration::CONCURRENCY.times do
    self.new(queue).start
  end
end

Instance Method Details

#startObject



13
14
15
16
17
18
19
20
21
# File 'lib/gem/src/srv/worker.rb', line 13

def start
  Thread.new do
    loop do
      spec = @queue.pop
      fetcher = Fetcher.new(spec)
      fetcher.fetch
    end
  end
end