Hyperlinkv0.8.0-beta.28

FiberMap

FiberMap.sizeconsteffect/FiberMap.ts:963
<K, A, E>(self: FiberMap<K, A, E>): Effect.Effect<number>

Gets the number of fibers currently in the FiberMap.

Example (Checking the map size)

import { Effect, FiberMap } from "effect"

const program = Effect.gen(function*() {
  const map = yield* FiberMap.make<string>()

  console.log(yield* FiberMap.size(map)) // 0

  // Add some fibers
  yield* FiberMap.run(map, "task1", Effect.never)
  yield* FiberMap.run(map, "task2", Effect.never)

  console.log(yield* FiberMap.size(map)) // 2
})
combinators
export const size = <K, A, E>(self: FiberMap<K, A, E>): Effect.Effect<number> =>
  Effect.sync(() => self.state._tag === "Closed" ? 0 : MutableHashMap.size(self.state.backing))