class Concurrent::PerThreadExecutor
def self.post(*args)
def self.post(*args) raise ArgumentError.new('no block given') unless block_given? Thread.new(*args) do Thread.current.abort_on_exception = false yield(*args) end return true end
def <<(task)
def <<(task) PerThreadExecutor.post(&task) return self end
def post(*args, &task)
def post(*args, &task) return PerThreadExecutor.post(*args, &task) end