Module: XRBP::Terminatable

Overview

Helper mixin facilitating controlled termination of asynchronous components.

Instance Method Summary collapse

Instance Method Details

#terminate!Object



15
16
17
# File 'lib/xrbp/terminatable.rb', line 15

def terminate!
  terminate_queue << true
end

#terminate?Boolean



11
12
13
# File 'lib/xrbp/terminatable.rb', line 11

def terminate?
  !!terminate_queue.pop_or_nil
end

#terminate_queueObject



7
8
9
# File 'lib/xrbp/terminatable.rb', line 7

def terminate_queue
  @terminate_queue ||= Queue.new
end