Thread overview
[D-runtime] druntime commit, revision 496
Jan 10, 2011
dsource.org
Jan 16, 2011
Walter Bright
Jan 16, 2011
Walter Bright
Jan 19, 2011
Sean Kelly
January 10, 2011
druntime commit, revision 496


user: schveiguy

msg:
Array append LRU cache prevents array memory from being collected.  This fixes that problem.  See bugzilla 3929

Implemented via malloc/free for the cache, and and also a hook from the GC to allow purging of the caches during a collection cycle.

Deleting an array also now removes it from the cache.

UNTESTED ON MACOSX!  Works on Windows/Linux.

http://www.dsource.org/projects/druntime/changeset/496

paths changed:
U   trunk/src/core/thread.d
U   trunk/src/gc/gc.d
U   trunk/src/gc/gcx.d
U   trunk/src/rt/lifetime.d

January 10, 2011
If someone finds this fails on MacOS, please let me know.

-Steve




----- Original Message ----
> From: dsource.org <noreply at dsource.org>
> To: d-runtime at puremagic.com
> Sent: Mon, January 10, 2011 9:56:22 AM
> Subject: [D-runtime] druntime commit, revision 496
> 
> druntime commit, revision 496
> 
> 
> user: schveiguy
> 
> msg:
> Array  append LRU cache prevents array memory from being collected.  This fixes
>that problem.  See bugzilla 3929
> 
> Implemented via malloc/free for the  cache, and and also a hook from the GC to
>allow purging of the caches during a  collection cycle.
> 
> Deleting an array also now removes it from the  cache.
> 
> UNTESTED ON MACOSX!  Works on  Windows/Linux.
> 
> http://www.dsource.org/projects/druntime/changeset/496
> 
> paths  changed:
> U   trunk/src/core/thread.d
> U    trunk/src/gc/gc.d
> U   trunk/src/gc/gcx.d
> U    trunk/src/rt/lifetime.d
> 
> _______________________________________________
> D-runtime  mailing list
> D-runtime at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/d-runtime
> 



January 15, 2011
This change breaks the windows dll tests.

dsource.org wrote:
> druntime commit, revision 496
>
>
> user: schveiguy
>
> msg:
> Array append LRU cache prevents array memory from being collected.  This fixes that problem.  See bugzilla 3929
>
> Implemented via malloc/free for the cache, and and also a hook from the GC to allow purging of the caches during a collection cycle.
>
> Deleting an array also now removes it from the cache.
>
> UNTESTED ON MACOSX!  Works on Windows/Linux.
>
> http://www.dsource.org/projects/druntime/changeset/496
>
> paths changed:
> U   trunk/src/core/thread.d
> U   trunk/src/gc/gc.d
> U   trunk/src/gc/gcx.d
> U   trunk/src/rt/lifetime.d
>
> _______________________________________________
> D-runtime mailing list
> D-runtime at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/d-runtime
>
>
> 
January 16, 2011
Is this still an issue? I saw from another message that there are other problems?

Two things:  I didn't test using dll's or so's. Also the new code heavily depends on thread local storage and static shared and unshared ctors. The ctor part is very new.

I remember someone in the ng having problems with tls and dlls.

Sent from my iPhone

On Jan 15, 2011, at 8:48 PM, Walter Bright <walter at digitalmars.com> wrote:

> This change breaks the windows dll tests.
> 
> dsource.org wrote:
>> druntime commit, revision 496
>> 
>> 
>> user: schveiguy
>> 
>> msg:
>> Array append LRU cache prevents array memory from being collected.  This fixes that problem.  See bugzilla 3929
>> 
>> Implemented via malloc/free for the cache, and and also a hook from the GC to allow purging of the caches during a collection cycle.
>> 
>> Deleting an array also now removes it from the cache.
>> 
>> UNTESTED ON MACOSX!  Works on Windows/Linux.
>> 
>> http://www.dsource.org/projects/druntime/changeset/496
>> 
>> paths changed:
>> U   trunk/src/core/thread.d
>> U   trunk/src/gc/gc.d
>> U   trunk/src/gc/gcx.d
>> U   trunk/src/rt/lifetime.d
>> 
>> _______________________________________________
>> D-runtime mailing list
>> D-runtime at puremagic.com
>> http://lists.puremagic.com/mailman/listinfo/d-runtime
>> 
>> 
>> 
> _______________________________________________
> D-runtime mailing list
> D-runtime at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/d-runtime
January 16, 2011
I think your changes didn't break things, just exposed the design errors.

Steven Schveighoffer wrote:
> Is this still an issue? I saw from another message that there are other problems?
>
> Two things:  I didn't test using dll's or so's. Also the new code heavily depends on thread local storage and static shared and unshared ctors. The ctor part is very new.
>
> I remember someone in the ng having problems with tls and dlls.
>
> Sent from my iPhone
>
> On Jan 15, 2011, at 8:48 PM, Walter Bright <walter at digitalmars.com> wrote:
>
> 
>> This change breaks the windows dll tests.
>>
>> dsource.org wrote:
>> 
>>> druntime commit, revision 496
>>>
>>>
>>> user: schveiguy
>>>
>>> msg:
>>> Array append LRU cache prevents array memory from being collected.  This fixes that problem.  See bugzilla 3929
>>>
>>> Implemented via malloc/free for the cache, and and also a hook from the GC to allow purging of the caches during a collection cycle.
>>>
>>> Deleting an array also now removes it from the cache.
>>>
>>> UNTESTED ON MACOSX!  Works on Windows/Linux.
>>>
>>> http://www.dsource.org/projects/druntime/changeset/496
>>>
>>> paths changed:
>>> U   trunk/src/core/thread.d
>>> U   trunk/src/gc/gc.d
>>> U   trunk/src/gc/gcx.d
>>> U   trunk/src/rt/lifetime.d
>>>
>>> _______________________________________________
>>> D-runtime mailing list
>>> D-runtime at puremagic.com
>>> http://lists.puremagic.com/mailman/listinfo/d-runtime
>>>
>>>
>>> 
>>> 
>> _______________________________________________
>> D-runtime mailing list
>> D-runtime at puremagic.com
>> http://lists.puremagic.com/mailman/listinfo/d-runtime
>> 
> _______________________________________________
> D-runtime mailing list
> D-runtime at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/d-runtime
>
>
> 
January 19, 2011
Oh... oops.

On Jan 16, 2011, at 3:47 PM, Walter Bright wrote:

> I think your changes didn't break things, just exposed the design errors.
> 
> Steven Schveighoffer wrote:
>> Is this still an issue? I saw from another message that there are other problems?
>> 
>> Two things:  I didn't test using dll's or so's. Also the new code heavily depends on thread local storage and static shared and unshared ctors. The ctor part is very new.
>> 
>> I remember someone in the ng having problems with tls and dlls.
>> 
>> Sent from my iPhone
>> 
>> On Jan 15, 2011, at 8:48 PM, Walter Bright <walter at digitalmars.com> wrote:
>> 
>> 
>>> This change breaks the windows dll tests.
>>> 
>>> dsource.org wrote:
>>> 
>>>> druntime commit, revision 496
>>>> 
>>>> 
>>>> user: schveiguy
>>>> 
>>>> msg:
>>>> Array append LRU cache prevents array memory from being collected.  This fixes that problem.  See bugzilla 3929
>>>> 
>>>> Implemented via malloc/free for the cache, and and also a hook from the GC to allow purging of the caches during a collection cycle.
>>>> 
>>>> Deleting an array also now removes it from the cache.
>>>> 
>>>> UNTESTED ON MACOSX!  Works on Windows/Linux.
>>>> 
>>>> http://www.dsource.org/projects/druntime/changeset/496
>>>> 
>>>> paths changed:
>>>> U   trunk/src/core/thread.d
>>>> U   trunk/src/gc/gc.d
>>>> U   trunk/src/gc/gcx.d
>>>> U   trunk/src/rt/lifetime.d
>>>> 
>>>> _______________________________________________
>>>> D-runtime mailing list
>>>> D-runtime at puremagic.com
>>>> http://lists.puremagic.com/mailman/listinfo/d-runtime
>>>> 
>>>> 
>>>> 
>>> _______________________________________________
>>> D-runtime mailing list
>>> D-runtime at puremagic.com
>>> http://lists.puremagic.com/mailman/listinfo/d-runtime
>>> 
>> _______________________________________________
>> D-runtime mailing list
>> D-runtime at puremagic.com
>> http://lists.puremagic.com/mailman/listinfo/d-runtime
>> 
>> 
>> 
> _______________________________________________
> D-runtime mailing list
> D-runtime at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/d-runtime