()
| 2360 | > = MutableList.make() |
| 2361 | |
| 2362 | get shutdown(): Effect.Effect<void> { |
| 2363 | return Effect.withFiber((fiber) => |
| 2364 | Effect.forEach( |
| 2365 | MutableList.takeAll(this.publishers), |
| 2366 | ([_, deferred, last]) => last ? Deferred.interruptWith(deferred, fiber.id) : Effect.void, |
| 2367 | { concurrency: "unbounded", discard: true } |
| 2368 | ) |
| 2369 | ) |
| 2370 | } |
| 2371 | |
| 2372 | handleSurplus( |
| 2373 | pubsub: PubSub.Atomic<A>, |