# collectAllFork

Forks the collection of all values from an `Fx`.

## Signatures

```ts
export declare const collectAllFork: <A, E = never, R = never>(fx: Fx<A, E, R>) => Effect.Effect<Fiber.Fiber<ReadonlyArray<A>, E>, never, R>;
```

## Why

Collection can proceed concurrently while the caller retains a typed `Fiber` for
awaiting, polling, or interruption.

## Ownership and lifetime

Running the returned Effect starts a child fiber immediately. The parent fiber's
scope supervises it, so parent termination interrupts collection. The child retains
every value until completion and exposes source failure as its `E` channel.

## Examples

```ts
import { Effect, Fiber } from "effect"
import { collectAllFork, fromIterable } from "@typed/fx/Fx"

const program = Effect.gen(function* () {
  const fiber = yield* collectAllFork(fromIterable([1, 2, 3]))
  return yield* Fiber.join(fiber)
})
```
