I believe only the objects in the com.sun.j3d.util.geometry package implement this 
capability. Other objects should be GCed when removed from the scene graph as expected.

Sean

> -----Original Message-----
> From: ZACZEK, MARIUSZ P. (MARIO) (JSC-DM) (NASA)
> [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, March 05, 2003 10:41 AM
> To: [EMAIL PROTECTED]
> Subject: Re: [JAVA3D] ? Garbage Collection - memory does not 
> decrease ?
> 
> 
> Good point...that did make the garbage collection work 
> although it causes
> you to have
> a much larger memory hit from the start since you are not sharing the
> geometry.
> 
> But, though this may be a partial solution (or tradeoff) for 
> Java3D objects
> that have
> this capability, what about things that don't have a default sharing
> capability?
> Or do all nodes share info?
> 
>    Mario
> 
> 
> 
> -----Original Message-----
> From: Sean Sylvis [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, March 05, 2003 12:13 PM
> To: ZACZEK, MARIUSZ P. (MARIO) (JSC-DM) (NASA)
> Cc: Discussion list for Java 3D API
> Subject: RE: [JAVA3D] ? Garbage Collection - memory does not 
> decrease ?
> 
> 
> 
> By default, the Sphere class (and all of the Primitives) share their
> geometry. The Sphere class maintains a reference to that 
> Sphere geometry so
> it can be shared when another Sphere with the same properties 
> is desired.
> So, even if you remove the Sphere from the scene graph, it 
> will not be GCed.
> You must set the GEOMETRY_NOT_SHARED capability flag on 
> Sphere construction
> if you do not want this behavior.
> 
> Sean
> 
> > -----Original Message-----
> > From: ZACZEK, MARIUSZ P. (MARIO) (JSC-DM) (NASA)
> > [mailto:[EMAIL PROTECTED]
> > Sent: Wednesday, March 05, 2003 8:49 AM
> > To: [EMAIL PROTECTED]
> > Subject: [JAVA3D] ? Garbage Collection - memory does not decrease ?
> >
> >
> > Below is a copy of a post someone put to this group in
> > 1998!!! There was no
> > answer
> > in that thread and searching the archives I have not yet found an
> > answer...so, I'm
> > going to ask you all about it. Do you know how to get back
> > the memory after
> > removing
> > a child from a parent?
> >
> > I run my code where I have a function to add 3D spheres to a
> > 3D canvas:
> >
> >   void addSpheres() {
> >     for (int i=0; i<1000; i++)
> >       mainBranchGroup.addChild(new sphere(...));
> >   }
> >
> > Later on I remove the spheres:
> >
> >   void removeSpheres() {
> >     mainBranchGroup.removeAllChildren();
> >   }
> >
> > BUT, running   java -verbose:gc myProgram
> > Shows NO decrease in memory....I only see a steady increase
> > in memory used
> > as I add more
> > spheres, but if I remove them I don't see any memory decrease.
> >
> > I am quite confident I have NO reference to the new sphere()
> > anywhere else
> > so I don't see
> > why the memory should not be released....any
> > hints/thoughts/suggestions? ...
> > or is this
> > a persistent problem in Java3D?
> >
> > I've also tried the System.gc();  call periodically but I
> > find that it does
> > nothing for me...
> > and by the Javadocs for it I can see that this call MAY or 
> MAY NOT do
> > anything...kind of wierd.
> >
> > Thanks,
> >
> >   Mario
> >
> >
> >
> > >> -----Original Message-----
> > >> From: Jon Barrilleaux [SMTP:[EMAIL PROTECTED]
> > >> Sent: Friday, October 09, 1998 2:25 PM
> > >> Subject: [java3d] garbage collection after removing nodes
> > >>
> > >> Someone reported on this list a while back that memory was
> > not being
> > >> freed after releasing a large number of Group nodes.  I
> > never saw an
> > >> answer to this on the list.
> > >>
> > >> I've observed a similar problem.  I create a large scene in a
> > >> BranchGroup and add it to my scene.  Memory usage goes up.  After
> > >> removing it from its parent BranchGroup and then running
> > System.gc()
> > >> the memory usage does not change.  I'm pretty sure that I
> > don't have a
> > >> lingering reference.  Repeating this cycle of adding a new
> > scene graph
> > >> and then removing it only causes the memory size to grow.
> > >>
> > >> Is this a known bug or am I missing something?
> > >>
> > >> --jon
> >
> >
> >
> >
> >    Mario
> >
> > Mariusz Zaczek
> > NASA - Johnson Space Center
> > Automated Vehicles and Orbit Analysis / DM35
> > Flight Design and Dynamics Division
> > Mission Operations Directorate
> > Bldg: 30A     Room: 3040A
> >
> > Disclaimer: "The opinions, observations and comments
> > expressed in my email
> >              are strictly my own and do not necessarily
> > reflect those of
> > NASA."
> >
> > ==============================================================
> > =============
> > To unsubscribe, send email to [EMAIL PROTECTED] and
> > include in the body
> > of the message "signoff JAVA3D-INTEREST".  For general help,
> > send email to
> > [EMAIL PROTECTED] and include in the body of the message "help".
> >
> 
> ==============================================================
> =============
> To unsubscribe, send email to [EMAIL PROTECTED] and 
> include in the body
> of the message "signoff JAVA3D-INTEREST".  For general help, 
> send email to
> [EMAIL PROTECTED] and include in the body of the message "help".
> 

==========================================================================To 
unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA3D-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to