On Oct 29, 2010, at 4:01 PM, felix wrote:

> On 10/29/10 15:18, Jim Deville wrote:
>> C# 4.0 has WeakMap's too, and one of the goals was to work around the 
>> cyclical reference issue:
>> 
>> http://blogs.msdn.com/b/clrteam/archive/2009/05/18/the-conditional-weak-table-enabling-dynamic-object-properties.aspx
> 
> mono implements ConditionalWeakTable with Ephemeron tables registered with 
> the GC.  The registration does nothing with boehm-gc, but there is special 
> handling for Ephemerons in the experimental sgen-gc, and it looks to me like 
> it's similar to what's described on the ECMAScript wiki for WeakMap: 
> repeatedly scan Ephemeron key,value entries for values that are newly 
> reachable, until no more newly-reachable values are found.
> 
> http://github.com/mono/mono/blob/09ae7f243df64f6928ffcd89eb44ac1f688c689e/mono/metadata/sgen-gc.c
> 
> it's instrumented to count how many times it repeats the Ephemeron scan, so 
> it probably wouldn't be too hard to get practical data on how expensive it is 
> in real usage.


We have a patch in progress for SpiderMonkey, in this bug:

https://bugzilla.mozilla.org/show_bug.cgi?id=547941

It won't be in Firefox 4.

Instrumentation is easy, the hard part (as ever) is workload selection. That 
would be good to build up, in advance of implementations.

/be
_______________________________________________
es-discuss mailing list
es-discuss@mozilla.org
https://mail.mozilla.org/listinfo/es-discuss

Reply via email to