I am studying CORBA and how IDL maps interfaces to different languages. I read that you can not write constructors and destructors in an IDL interface because objects are not created locally.
My question is:
How can a client delete an object if he does not specify a destructor in the IDL interface, is the server only responsible for deleting objects? Does CORBA provide a garbage collection mechanism/specification or is the language on the server side responsible to do that? If only server is responsible to delete objects how can it be sure that an object should be deleted? Pinging the client?