[Seaside] WeakArray (again)

John M McIntosh johnmci at smalltalkconsulting.com
Sat Mar 25 19:48:07 UTC 2006


The only concern I would have is access to the valueDictionary  
WeakRegistry  when processing the array at a low background priority  
since it may block the access to adding new elements. However a fix  
may be to add a shared queue that add: uses to place elements on.  
Later on the finalizeValues stick the elements in the value  
dictionary. However I'm not sure if other accesses to t he value  
dictionary might impact things.

On 25-Mar-06, at 11:12 AM, William Harford wrote:

>
> On Mar 24, 2006, at 9:50 PM, Andreas Raab wrote:
>>
>> True. From what I've seen over at the Seaside mailing list it  
>> seems pretty clear that the main issue is that the finalization  
>> process simply kicks in *way* to often. Have you guys (since  
>> you're having the problem I think it's appropriate if you can  
>> experiment with it a little ;-) thought about tweaking the  
>> finalization process to run at most (say) 20/sec? This is a simple  
>> change (see attached CS) which could have dramatic impact on your  
>> performance. The obvious disadvantage, of course, is that this  
>> renders any assumptions about "Smalltalk garbageCollect" having an  
>> immediate effect meaningless (which is the main reason the  
>> finalization process is implemented the way it is).
>
> I made some changes like this soon after I posted a message on the  
> Seaside mailing list.
>
> I also started running the Finalization process at a lower priority  
> level systemBackgroundPriority. I was not sure if this would cause  
> any problems (is there some sort of race condition I should be  
> worried about) but the changes have evened out my problems. It has  
> only been a couple days but it appears that it may have helped  
> mitigate some of the WeakArray finalization problems.
>
> Thanks
> Will
>
>
>

--
======================================================================== 
===
John M. McIntosh <johnmci at smalltalkconsulting.com> 1-800-477-2659
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
======================================================================== 
===




More information about the Squeak-dev mailing list