effect-concurrency-fibers

Concurrency & Fibers

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "effect-concurrency-fibers" with this command: npx skills add mepuka/effect-ontology/mepuka-effect-ontology-effect-concurrency-fibers

Concurrency & Fibers

When to use

  • Parallelizing independent work safely with limits

  • Coordinating background tasks and lifecycle

  • Racing operations for latency control

Parallel Patterns

const results = yield* Effect.all(tasks, { concurrency: 10 })

const processed = yield* Effect.forEach(items, processItem, { concurrency: 5 })

Fiber Lifecycle

const fiber = yield* Effect.fork(work) const value = yield* Fiber.join(fiber) yield* Fiber.interrupt(fiber)

Racing / Timeouts

const fastest = yield* Effect.race(slow, fast) const withTimeout = yield* Effect.timeout(operation, "5 seconds")

Guidance

  • Limit concurrency to protect resources

  • Use fork for background loops; always manage interruption

  • Prefer Effect.all for independent operations

  • Use Effect.forEach with concurrency for pools

  • Combine with retries and timeouts for resilient parallelism

Pitfalls

  • Unbounded concurrency can exhaust CPU/IO or hit rate limits

  • Always interrupt background fibers on shutdown

  • Don’t block inside fibers; keep work asynchronous/effectful

Cross-links

Local Source Reference

CRITICAL: Search local Effect source before implementing

The full Effect source code is available at docs/effect-source/ . Always search the actual implementation before writing Effect code.

Key Source Files

  • Effect: docs/effect-source/effect/src/Effect.ts

  • Fiber: docs/effect-source/effect/src/Fiber.ts

  • Duration: docs/effect-source/effect/src/Duration.ts

Example Searches

Find Effect.all and concurrency patterns

grep -F "Effect.all" docs/effect-source/effect/src/Effect.ts

Find forEach with concurrency

grep -rF "forEach" docs/effect-source/effect/src/ | grep -F "concurrency"

Study Fiber lifecycle operations

grep -F "export" docs/effect-source/effect/src/Fiber.ts | grep -E "fork|join|interrupt"

Find race and timeout implementations

grep -F "race" docs/effect-source/effect/src/Effect.ts grep -F "timeout" docs/effect-source/effect/src/Effect.ts

Workflow

  • Identify the concurrency API you need (e.g., Effect.all, fork)

  • Search docs/effect-source/effect/src/Effect.ts for the implementation

  • Study the types and concurrency options

  • Look at test files for usage examples

  • Write your code based on real implementations

Real source code > documentation > assumptions

References

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

effect-index

No summary provided by upstream source.

Repository SourceNeeds Review
299-mepuka
General

effect-patterns-hub

No summary provided by upstream source.

Repository SourceNeeds Review
General

effect-errors-retries

No summary provided by upstream source.

Repository SourceNeeds Review
General

effect-testing-mocking

No summary provided by upstream source.

Repository SourceNeeds Review