plugin code and garbage collection

Andreas Raab Andreas.Raab at gmx.de
Fri Aug 2 22:51:49 UTC 2002


Keep in mind that using pushRemappableOop: is only safe up to the size
of the remap-buffer (25 items right now). After exceeding it your Squeak
will horribly crash.

So if you have many objects a better solution might be to pre-allocate
them on the Squeak-level and just "fill them in" by the primitive.

And out of curiosity: What does your plugin do?!

Cheers,
  - Andreas

> -----Original Message-----
> From: squeak-dev-admin at lists.squeakfoundation.org 
> [mailto:squeak-dev-admin at lists.squeakfoundation.org] On 
> Behalf Of Stephen Pair
> Sent: Saturday, August 03, 2002 12:46 AM
> To: squeak-dev at lists.squeakfoundation.org
> Subject: RE: plugin code and garbage collection
> 
> 
> Yes and yes...use ObjectMemory>>pushRemappableOop: and
> ObjectMemory>>popRemappableOop for oops that you need to hold 
> across an
> object allocation (which can trigger gc and memory compaction). 
> 
> - Stephen
> 
> 
> > -----Original Message-----
> > From: squeak-dev-admin at lists.squeakfoundation.org 
> > [mailto:squeak-dev-admin at lists.squeakfoundation.org] On 
> > Behalf Of Arjen van Elteren
> > Sent: Friday, August 02, 2002 6:31 PM
> > To: squeak-dev at lists.squeakfoundation.org
> > Subject: plugin code and garbage collection
> > 
> > 
> > Hi,
> > 
> > I'm playing with building my own plugin. In this code objects are 
> > instanciated and linked up, filling the reciever
> > object of the primitive function. These questions came up... 
> > Will the gc 
> > run during object creation ?. Will OOPs change when a gc runs 
> > during these 
> > operations ?
> > 
> > Arjen
> > 
> > 
> > 
> > 
> 
> 




More information about the Squeak-dev mailing list