[gclist] Whats the right algorithm for this case?
Charles Fiterman
cef@geodesic.com
Fri, 31 Jan 1997 09:12:30 -0600
At 02:15 PM 1/31/97 +0000, you wrote:
>> At 09:55 AM 1/31/97 +0000, you wrote:
>> >> First applications that use the treadmill will be giving the collector
>> >> atoms of time when they are idle. This more than fills the collectors
>> >> needs for time and can be used to finalize and free objects instead of
>> >> having that work done when a header is needed.
>> >
>> >Many applications are never idle, or need to be able to run for hours
>> >or days at a time with no idle time. Should these applications not use
>> >the treadmill?
>>
>> Thats right. The treadmill trades lots of efficiency for extreme incremental
>> behavior where the largest collector delay is very small. If you don't need
>> that you are being very silly to use the treadmill.
>
>What if you do need that, and yet are never idle (or may run for hours
>without idle time)? The two are completely orthogonal.
I don't know? The applications I'm familiar with have tons of idle time and
low tolerance for collector delays. Shifting work into idle time is always
good so having finalizers run in idle time allows the program to shift its
work into idle time opportunisticly. When you have some work to do in idle
time build an object that does it in its finalizer and don't point to it.
I really think you need a different algorithm and this forum is the right
place to ask. I don't know what will work, maybe you can add more info about
your specific application.
-
Charles Fiterman Geodesic Systems
414 North Orleans Suite 410 Phone 312 832 1221 x223
Chicago IL 60610-4418 FAX 312 832 1230
http://www.geodesic.com
A computer language without garbage collection
is like a city without garbage collection.