diff options
author | Matthew Newhook <matthew@zeroc.com> | 2005-09-06 07:09:57 +0000 |
---|---|---|
committer | Matthew Newhook <matthew@zeroc.com> | 2005-09-06 07:09:57 +0000 |
commit | 21273795cf24d77eecee55995a52ce57719c975d (patch) | |
tree | 744ddbaa38338f6ead13361f01af333b8649f6e3 /cppe/src/IceE/Instance.h | |
parent | fix. (diff) | |
download | ice-21273795cf24d77eecee55995a52ce57719c975d.tar.bz2 ice-21273795cf24d77eecee55995a52ce57719c975d.tar.xz ice-21273795cf24d77eecee55995a52ce57719c975d.zip |
http://bugzilla.zeroc.com/bugzilla/show_bug.cgi?id=448
Diffstat (limited to 'cppe/src/IceE/Instance.h')
-rw-r--r-- | cppe/src/IceE/Instance.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/cppe/src/IceE/Instance.h b/cppe/src/IceE/Instance.h index 7826e8d6819..e7a68f230c4 100644 --- a/cppe/src/IceE/Instance.h +++ b/cppe/src/IceE/Instance.h @@ -35,6 +35,7 @@ class Instance : public IceUtil::Shared, public IceUtil::RecMutex { public: + bool destroyed() const; Ice::CommunicatorPtr communicator() const; Ice::PropertiesPtr properties() const; Ice::LoggerPtr logger() const; @@ -74,7 +75,13 @@ private: friend class Ice::Communicator; Ice::Communicator* _communicator; // Not a Ptr, to avoid having Instance and Communicator point at each other. - bool _destroyed; + enum State + { + StateActive, + StateDestroyInProgress, + StateDestroyed + }; + State _state; const Ice::PropertiesPtr _properties; // Immutable, not reset by destroy(). Ice::LoggerPtr _logger; // Not reset by destroy(). const TraceLevelsPtr _traceLevels; // Immutable, not reset by destroy(). |