Skip to main content

Semaphore

Note

This is a point-in-time snapshot of the API documentation from January 2026. Going forward, we will not be maintaining a public copy of these references, and recommend users to refer to the built-in signature helpers available in the Hack LSP instead for complete and up-to-date information.

Run an operation with a limit on number of ongoing asynchronous jobs

All operations must have the same input type (Tin) and output type (Tout), and be processed by the same function; Tin may be a callable invoked by the function for maximum flexibility, however this pattern is best avoided in favor of creating semaphores with a more narrow process.

Use genWaitFor() to retrieve a Tout from a Tin.

Interface Synopsis

namespace HH\Lib\Async;

final class Semaphore {...}

Public Methods