class Async::WorkerPool::Promise

def call

def call
	work = nil
	
	@guard.synchronize do
		@thread = ::Thread.current
		
		return unless work = @work
	end
	
	resolve(work.call)
rescue Exception => error
	reject(error)
end