|
|
|
|||||
|
The advantage of having a Dispose() method would be that there are a lot of component management frameworks that can take advantage of IDisposable objects.
As I mentioned above, our libraries don't expose Ice directly to the client applications. Many of the apps were initially built as fat clients, and are being migrated to a service-based architecture, so we are trying to integrate Ice with as little impact on the clients as possible. One way we have achived this is by using a component container such as the Windsor MicroKernel (www.castleproject.org) to allow different subsystems to create and register components in a container which is under the application's control. The application doesn't know what is in the container. It just knows that before it exits, it has to Dispose() of the container, which in turn will Dispose() of any IDisposable objects inside of itself. Each of these libraries that uses Ice retrieves its Communicator from the container (the container can be configured to create it on first request), and the Communicator gets destroyed when the app Dispose()s of the container. However, due to the fact that Communicator doesn't implement IDisposable, it can't directly take advantage of this. We have to wrap it in a thin wrapper class that does implement IDisposable, which in turn calls calls destroy(). If Communicator implement IDisposable directly, we wouldn't need this wrapper class. The lack of IDisposable is far from a showstopper and not a big deal at all. It is just a very minor inconvenience. Thanks, Brett
__________________
Brett Polivka Core Financial Systems Magnetar Capital LLC |
|
|||||
|
Quote:
__________________
Brett Polivka Core Financial Systems Magnetar Capital LLC |
|
|||||
|
I hadn't thought about the fact that the Communicator was generated from Slice. I totally agree that it's not worth adding a metadata directive just to get this feature.
Thanks for all of your time, Brett
__________________
Brett Polivka Core Financial Systems Magnetar Capital LLC |
![]() |
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Threads and Shutdown | acbell | Help Center | 1 | 11-30-2006 06:16 AM |
| Java VM Crash within Ice.CommunicatorI.destroy and many threads w/ Prioxies. | jae | Help Center | 3 | 10-17-2006 10:09 PM |
| Precisely how are Ice threads implemented? | ChrisC | Help Center | 8 | 12-22-2005 12:39 PM |
| Multiple threads smashing the stack | Ric | Help Center | 8 | 06-09-2005 01:55 PM |
| Contexts and threads | aaron | Help Center | 2 | 01-27-2004 01:59 PM |