Context.Reference<number>Context reference that controls the maximum number of operations a fiber can perform before yielding control back to the scheduler.
When to use
Use to tune scheduler fairness for CPU-bound fibers by changing the scheduler operation budget that triggers a yield.
Details
The default value is 2048 operations, which balances performance and
fairness by helping prevent long-running fibers from monopolizing the
execution thread.
export const const MaxOpsBeforeYield: Context.Reference<number>const MaxOpsBeforeYield: {
defaultValue: () => Shape;
of: (this: void, self: number) => number;
context: (self: number) => Context.Context<never>;
use: (f: (service: number) => Effect<A, E, R>) => Effect<A, E, R>;
useSync: (f: (service: number) => A) => Effect<A, never, never>;
Identifier: Identifier;
Service: Shape;
key: string;
stack: string | undefined;
pipe: { <A>(this: A): A; <A, B = never>(this: A, ab: (_: A) => B): B; <A, B = never, C = never>(this: A, ab: (_: A) => B, bc: (_: B) => C): C; <A, B = never, C = never, D = never>(this: A, ab: (_: A) => B, bc: (_: B) => C, cd: (_: C) => D): D; <…;
toString: () => string;
toJSON: () => unknown;
}
Context reference that controls the maximum number of operations a fiber
can perform before yielding control back to the scheduler.
When to use
Use to tune scheduler fairness for CPU-bound fibers by changing the scheduler
operation budget that triggers a yield.
Details
The default value is 2048 operations, which balances performance and
fairness by helping prevent long-running fibers from monopolizing the
execution thread.
MaxOpsBeforeYield = import ContextContext.Reference<number>("effect/Scheduler/MaxOpsBeforeYield", {
defaultValue: () => numberdefaultValue: () => 2048
})