promesa.exec.semaphore

Concurrency limiter: Semaphore

acquire!

(acquire! sem)(acquire! sem & {:keys [permits timeout blocking], :or {blocking true, permits 1}})

create

(create & {:keys [permits], :or {permits 1}})

Creates a Semaphore instance.

release!

(release! sem)(release! sem & {:keys [permits]})