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