----- Original Message ----- From: "MikkelFJ" <mikkelj-anti-spam / post1.dknet.dk> Newsgroups: comp.lang.ruby To: "ruby-talk ML" <ruby-talk / ruby-lang.org>; <undisclosed-recipients: ;> Sent: Wednesday, August 01, 2001 12:16 AM Subject: [ruby-talk:18920] Re: Dynamic ORBit bindings for Ruby > > "Tobin Baker" <senderista / hotmail.com> wrote in message > news:dbbeaaa3.0107311358.79f439da / posting.google.com... > > Kenichi Komiya <kom / mail1.accsnet.ne.jp> wrote in message > news:<gGB97.12858$WD1.528847 / e420r-atl2.usenetserver.com>... > > > > >I read the README of Dynamic-ORBit with great interest. I am > > >interested in partially because I want to use CORBA with Ruby, > > Could any of you CORBA freaks :-) give a short introduction to > object-lifetime management in CORBA, and how it relates to garbage > collection / distributed garbage collection? Management of object lifetimes is left entirely up to the application creating the objects. CORBA doesn't offer any garbage collection of server objects. The language mappings define garbage collection for proxies (because those are automatically instantiated by the ORB). E.g. in languages without garbage collection, the CORBA::Object interface provides methods for reference counting. A CORBA object reference is persistent. That is, if a server crashes or is shut down, the objects on that server can still be referred to by their original identifiers, and objects can be moved between servers and maintain identity. (c.f. SOAP in which an object's identity is tied to it's location by the hostname in the object's URL). This makes garbage collection pretty much impossible because (ignoring the entire problem of *distributed* garbage collection) even when there are no live references to an object through the ORB, valid references may still exist outside the ORB, in email messages or text files for example.