Rob Clark wrote:
>
> Chris Abbey wrote:
>
> > But is that memory allocated out of the chunk of VM reserved as the
> > HEAP?
> > I doubt it... I don't think it even blongs to the same process does
> > it?
> > Seems to me that it would have to belong to the Xserver's process...
> > in
> > the Xserver's address space and potentially on the Xserver's machine
> >
> > (as in a different machine than the JVM)...
>
> You are correct that it is not allocated from the same heap. The
> problem is that it is an allocation of resources that isn't accounted
> for when deciding to garbage collect. (Have you ever seen a linux box
> come to it's knees just because X is using >100MB and your out of
> swap?) This is memory that is free'd when the Image object is gc'd,
> but if your java application it's using much memory allocated from
> it's heap, then the Image objects will never be gc'd.
Rob's request is at least 50% reasonable - maybe not from the standpoint
of Java's established logic for GC, but certainly from the standpoint of
managing system resources and making Java a useful environment on Linux.
Apparently Java is doing the right thing - calling XFree() for a
resource it no longer needs - but it's taking its time about it and
giving us no opportunity to avoid a meltdown we know perfectly well how
to avoid.
There's opportunity here for some creative solution that makes Java a
little more cognizant of the larger environment it's polluting. I'm just
not sure what that solution looks like...
Nathan
----------------------------------------------------------------------
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]