IMHO, it should be resolved in `WeakRefs` (Stage 1). https://github.com/tc39/proposal-weakrefs
2016/08/26 17:19、Michał Wadas <[email protected]> のメッセージ: > For your case I would suggest deterministic scope for objects via promises > and reference counting across workers. For your case you don't need to really > GC object - you can just put in invalided internal state. > > See sequelize transaction handling for similar solution. > > However, observing GC would be great. > > >> On 26 Aug 2016 7:55 a.m., "현우박" <[email protected]> wrote: >> I know it's the design choice that WeakSet and WeakMap's key is not >> enumurable because it's weak, but I think values in WeakMap is little >> different. >> >> WeakSet's values and WeakMap's keys must not be referenced from the map/set >> itself. If values from WeakSet can be accessed, then it cannot be GCed. And >> it's not we want for WeakMap/Set. >> >> But well, WeakMap's values ARE referenced from WeakMap, via map.get(key). So >> values in WeakMap cannot GCed until it's matching key is GCed, and it's >> intended feature. >> >> My suggestion is, a new WeakMap method that does same thing as >> Map.prototype.values(). With such method, we can utilize JS runtime's GC >> functionality in userspace. >> >> For example, I'm planning to make immutable data structures on >> SharedArrayBuffer to boost data passing speed between Workers. As you may >> know proper GC is the important problem for immutable data structure. But in >> this case GC is not the free lunch as data is shared between multiple JS >> context. So I need to check manually what data node is still visible in each >> context, and clear unused data manually. >> >> Please tell me your idea about this suggestion >> >> _______________________________________________ >> es-discuss mailing list >> [email protected] >> https://mail.mozilla.org/listinfo/es-discuss > _______________________________________________ > es-discuss mailing list > [email protected] > https://mail.mozilla.org/listinfo/es-discuss
_______________________________________________ es-discuss mailing list [email protected] https://mail.mozilla.org/listinfo/es-discuss

