Re: [orbitcpp-list] Destroying CORBA objects
Status: Beta
Brought to you by:
philipd
From: Michael R. <mi...@ru...> - 2000-10-19 11:35:02
|
Hi Phil, does your current work include the create_POA related stuff? A friend of mine is having troubles using special policies on a new POA...!! Thanks, Michael ----- Original Message ----- From: "Phil Dawes" <ph...@us...> To: <orb...@li...> Sent: Donnerstag, 19. Oktober 2000 12:07 Subject: Re: [orbitcpp-list] Destroying CORBA objects > Hi Sam, > > You're right - a 'delete this' (on its own) will cause problems since > the object must be removed from the active object map before deleting > otherwise the poa will continue sending requests to a dead servant. > > Michi Henning (Advanced CORBA Programming with C++) recommends that > the 'free' call (called 'remove' in the CORBA lifecycle spec - you may > want to copy this convention) be put on the object interface rather > than the factory, since object refs can be passed between servers and > so having to keep track of the parent/factory can be a pain. Note that > both COM and EJB follow this approach (in methods > 'IUnknown::release()' and 'EJBObject.remove()' respectively). > > <The bad news> > Unfortunately orbitcpp doesn't have the poa infrastructure to do this > right now, but I am currently working on it. Expect the code to be in > cvs within the next 2 weeks. I'll keep you posted. > </The bad news> > > Cheers, > > Phil > > Sam Couter writes: > > All, > > > > I have a CORBA application that creates many objects on the server side, > > continuously. I need a way to destroy these objects to avoid memory leaks. > > > > The application was previously using ORBit, and all I did was provide a > > free() method on each object, which the client called when it was finished > > with the object. > > > > Now that I need to tie the application into a C++ API, I've decided to use > > ORBitcpp. > > > > So, how do I destroy an object in the server in ORBitcpp? I know how to > > create one (the Account/Bank example), but doing "delete(this)" to dest roy > > it seems like suicide to me. > > > > Should I provide a bunch of freeObjectFoo() methods on the factory object > > that's creating them all in the first place? This doesn't seem like the > > correct solution. If I do this, what do I need to do to destroy the objects > > passed to this method? > > > > Thanks. > > -- > > Sam Couter | Internet Engineer | http://www.topic.com.au/ > > sa...@to... | tSA Consulting | > > PGP key available on key servers > > PGP key fingerprint: A46B 9BB5 3148 7BEA 1F05 5BD5 8530 03AE DE89 C75C > > _______________________________________________ > orbitcpp-list mailing list > orb...@li... > http://lists.sourceforge.net/mailman/listinfo/orbitcpp-list |