Open
Bug 1501334
Opened 6 years ago
Updated 1 month ago
IsAboutToBeFinalized doesn't work for atoms
Categories
(Core :: JavaScript: GC, enhancement, P5)
Core
JavaScript: GC
Tracking
()
NEW
People
(Reporter: jonco, Unassigned)
References
(Blocks 1 open bug)
Details
In general IsAboutToBeFinalized is only called on GC things in a zone that is currently being swept, and is used to discover when the referents of weak pointers are not live and are going to be destroyed. The exception to this is atoms, which are in a separate zone which is swept after all other zones (in an incremental collection). IsATBF doesn't currently take account of this, so if your object has a weak pointer to an atom calling it while your object is being swept will always return false, even though the atom could later be freed. Maybe we need to make an exception for this for atoms, or maybe we need another function for this case that returns whether an atom has been marked *so far*. In the sweeping case above this could result in things being swept even if the atom was later found to be used by another zone, but I think that this is safe.
Updated•2 years ago
|
Severity: normal → S3
Updated•1 month ago
|
Blocks: GC.easeofuse
Severity: S3 → N/A
You need to log in
before you can comment on or make changes to this bug.
Description
•