[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Fluids
From: |
Ludovic Courtès |
Subject: |
Re: Fluids |
Date: |
Wed, 03 Mar 2010 14:09:11 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux) |
Hi Andy,
Andy Wingo <address@hidden> writes:
> On Wed 03 Mar 2010 00:52, address@hidden (Ludovic Courtès) writes:
>
>> address@hidden (Ludovic Courtès) writes:
>>
>>> Andy Wingo <address@hidden> writes:
>>>
>>>> But you can't / shouldn't make a new fluid every time you enter a
>>>> `catch', because currently fluids are never garbage collected! We really
>>>> need to fix this. I think it's a 1.9 regression.
>>>
>>> Indeed. We should use a weak vector or some such instead of the current
>>> scm_gc_malloc’d array.
>>
>> Just to clarify: fluids themselves *are* GC’d, but fluid numbers aren’t
>> recycled so ALLOCATED_FLUIDS grows endlessly (1 byte per fluid).
>
> One word per make-fluid, per thread, right?
1 byte per fluid in ALLOCATED_FLUIDS, plus potentially 1 word per fluid
per thread in the dynamic state.
> FWIW I don't need fluids to be gc'd any more, though it probably is a
> good idea.
It surely is. :-)
Thanks,
Ludo’.