You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm thinking this could employ some rules to reduce the size of the unit of preemptive termination, as well as allowing users to artificially reduce it further as desired:
If an agent lacks a reference to a shared array buffer, it terminates that agent only.
If an agent has a reference to a shared array buffer, all agents are terminated by default.
Agents can opt on a per-agent basis to remain alive when another agent referencing a shared array buffer it also holds a reference to terminates. In this case, the opt-in makes it clear that the agent should be prepared to deal with potentially inconsistent state. (There are mechanisms for ensuring consistency in the face of potential sudden preemption - operating systems already necessarily use these for reasons like power failure tolerance.)
In all cases, the SAB remains alive and usable as long as agents with references to it retain their references.
I'm thinking this could employ some rules to reduce the size of the unit of preemptive termination, as well as allowing users to artificially reduce it further as desired:
This would be able to strike a compromise and avoid the issues detailed in https://github.com/tc39/proposal-oom-fails-fast#can-the-uopt-be-finer-grain-than-an-agent-cluster.
The text was updated successfully, but these errors were encountered: