> I notice the destructor of RTSPServer class is protected. What is the design > goal here? What is the correct method of resource cleanup/recycling given > this design?
The destructors of class “Medium”, and all of its subclasses (which includes “RTSPServer”) are protected, so that you don’t (can’t) remove them using “delete”. Instead, call Medium::close(pointer-to-object); > So far, my only ‘workaround’ is to derive a class of my own from RTSPServer > and make the derived class’ destructor public. > > Will destruction of the (derived) RTSPServer also clean up (delete) the media > sessions registered with it (it appears yes, just want to confirm). > > Anything else that needs to be cleaned up? Yes, which is why you should be calling “Medium::close()” instead. > Can the UsageEnvironment and the TaskScheduler have lifetimes that span many > server startups & shutdowns? Yes, of course. In general, though, for something as large/significant as a server, it’s usually better application design to clean it up by just letting the process exit (and then creating a new process if/when you want another server), rather than deleting/recreating a server over and over again within a single process. Ross Finlayson Live Networks, Inc. http://www.live555.com/ _______________________________________________ live-devel mailing list live-devel@lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel