class Async::Semaphore
def wait
def wait fiber = Fiber.current if blocking? @waiting << fiber Task.yield while blocking? end rescue Exception @waiting.delete(fiber) raise end
def wait fiber = Fiber.current if blocking? @waiting << fiber Task.yield while blocking? end rescue Exception @waiting.delete(fiber) raise end