(n: number)
| 142 | ) |
| 143 | } |
| 144 | const worker = (n: number) => { |
| 145 | if (n === 100) { |
| 146 | return pipe(Queue.shutdown(queue), Effect.zipRight(Effect.fail("fail"))) |
| 147 | } |
| 148 | return pipe(Queue.offer(queue, n), Effect.asVoid) |
| 149 | } |
| 150 | const queue = yield* Queue.unbounded<number>() |
| 151 | yield* Queue.offerAll(queue, Array.range(1, 100)) |
| 152 | const result = yield* Effect.exit(shard(queue, 4, worker)) |