If I have a factory object and say it instantiates an object per client and I have 100 clients. One of the clients diconnects, how would I know which object to dispose?

Bruce Martin

I assume by your question that you are interested in transient objects, not persistent objects and you want the lifetime of the object to somehow match the lifetime of the client. In order to achieve this, you will need to make the interface that the client uses be session oriented. CORBA has no built in notion of a session. The client will need to inform the server that it is done and that any resources, i.e. objects, allocated to it can be reclaimed. You need to supply code to dispose of the objects when the client disconnects. If the client should die and not disconnect, you can either implement a time out or just depend on the semantics of the transient object. The transient object will go away when the server terminates, not the client.