Backpressure: resolves once fewer than `limit` bundles are un-acked.
(limit: number)
| 155 | |
| 156 | /** Backpressure: resolves once fewer than `limit` bundles are un-acked. */ |
| 157 | waitBelow(limit: number): Promise<void> { |
| 158 | if (this.firstError || this.exited || this.outstanding < limit) return Promise.resolve(); |
| 159 | return new Promise<void>((resolve) => { |
| 160 | this.belowWaiters.push({ limit, resolve }); |
| 161 | }); |
| 162 | } |
| 163 | |
| 164 | /** Resolves when every bundle posted before this call has been applied. */ |
| 165 | drain(): Promise<void> { |