DrainWaiter
Defined in: packages/protocol/src/drain-waiter.ts:30
Singleton drain waiter for a socket.
Allows multiple concurrent requests to wait for drain with only a single event listener on the socket.
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new DrainWaiter(
_socket):DrainWaiter
Defined in: packages/protocol/src/drain-waiter.ts:56
Parameters
Section titled “Parameters”_socket
Section titled “_socket”Socket
Returns
Section titled “Returns”DrainWaiter
Methods
Section titled “Methods”clear()
Section titled “clear()”clear():
void
Defined in: packages/protocol/src/drain-waiter.ts:96
Clear all pending waiters and listener state. Call this on socket close/disconnect.
Returns
Section titled “Returns”void
waitForDrain()
Section titled “waitForDrain()”waitForDrain():
Promise<void>
Defined in: packages/protocol/src/drain-waiter.ts:69
Wait for socket drain if needed.
If socket doesn’t need drain, returns immediately. Otherwise, registers a waiter and returns when drain fires.
Returns
Section titled “Returns”Promise<void>
Throws
Section titled “Throws”If socket is destroyed or closes while waiting