Effect.acquireRelease for manual resources
Use Effect.acquireRelease when you need explicit acquire → use → release logic. Unlike Layer.scoped, this is for one-off resources—files, connections, locks—where you control the lifecycle directly.
The acquire effect runs first; the release runs when the scope ends, even if the use phase fails.
- Use
Effect.acquireRelease(acquire, release)- release takes the acquired value - The result is an Effect that must be used inside
Effect.scoped - Release runs whether the use phase succeeds or fails
Loading code editor...