On Dec 28, 2006, at 11:01 AM, Rana Dasgupta wrote:

On 12/28/06, Geir Magnusson Jr. <[EMAIL PROTECTED]> wrote:



>Question - why would this be part of the GC system, rather than a VM
>facility that the GC uses?


It is a VM faciity, but the only consumer is the GC. So it doesn't matter
where the code lives.

really? We're claiming that we do pluggable GC, so I do think it matters. Also, doesn't this tie all sorts of user-thread priority management and balancing issues into the GC codebase?


Finalization is hardly ever used intensively by real apps, as far as I know,

agreed

except to release unmanaged resources that can't wait for process teardown.

I doubt people even do that.

We may be overthinking the design. I don't see a problem with Weldon's per cpu idea( though I don't know if one can assume that the JVM can control thread scheduling, it depends on how the JVM is hosted ). I think that it is
OK to fail with out of memory for a badly written app. As mentioned
elsewhere, I think, I would suggest waiting for a real problem to surface with an app or a benchmark we care about before trying to come up with the
design that will solve it.

Well, we need a finalizer. I agree that we're overthinking this a bit, but I'd like to understand why anyone thinks this belongs in the GC - we keep claiming to do a modular VM, yet then do things like this... :)

geir


Reply via email to