Class: ProleWorker

Inherits:
Object
  • Object
show all
Defined in:
lib/prole_worker.rb

Instance Method Summary collapse

Constructor Details

#initialize(jobs, logger:) ⇒ ProleWorker

Returns a new instance of ProleWorker.



2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/prole_worker.rb', line 2

def initialize(jobs, logger:)
  @jobs = jobs
  @result = nil
  @join = false
  @logger = logger
  @sleep_time = 0.001
  @thread = Thread.new do
    loop do
      if job = @jobs.shift
        execute_job(job)
      elsif @join
        break
      else
        sleep @sleep_time
      end
    end
  end
end

Instance Method Details

#joinObject



21
22
23
24
# File 'lib/prole_worker.rb', line 21

def join
  @join = true
  @thread.join
end