class Protobuf::Rpc::Zmq::Server
def self.run(options = {})
Class Methods
#
def self.run(options = {}) log_debug { sign_message("initializing broker") } @broker = ::Protobuf::Rpc::Zmq::Broker.new(options) local_worker_threads = options[:threads] worker_options = options.merge(:port => options[:port] + 1) log_debug { sign_message("starting server workers") } local_worker_threads.times do @threads << Thread.new { ::Protobuf::Rpc::Zmq::Worker.new(worker_options).run } end @running = true log_debug { sign_message("server started") } while self.running? do @broker.poll end ensure @broker.teardown if @broker end
def self.running?
def self.running? !!@running end
def self.stop
def self.stop @running = false @threads.each do |t| t.join end end