module Routemaster::Responses::ResponsePromise::Pool

Constants

LOCK

Public Class Methods

_build_pool() click to toggle source
# File lib/routemaster/responses/response_promise.rb, line 60
def self._build_pool
  Concurrent::ThreadPoolExecutor.new(min_length: 5, max_length: 20, max_queue: 0, max_threads: 20, fallback_policy: :caller_runs)
end
current() click to toggle source
# File lib/routemaster/responses/response_promise.rb, line 45
def self.current
  LOCK.synchronize do
    @pool ||= _build_pool
  end
end
reset() click to toggle source
# File lib/routemaster/responses/response_promise.rb, line 51
def self.reset
  LOCK.synchronize do
    return unless @pool
    @pool.tap(&:shutdown).wait_for_termination
    @pool = nil
  end
  self
end