summaryrefslogtreecommitdiff
path: root/cpp/include/Ice/Object.h
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2014-06-05 20:49:26 +0200
committerBenoit Foucher <benoit@zeroc.com>2014-06-05 20:49:26 +0200
commitbe5f41f8ffd74f2651b1db1a61badfd41f17a36d (patch)
treeb94687eaeb0f0024be247ef07efe7541b7d813b2 /cpp/include/Ice/Object.h
parentFixed ICE-5490: selector doesn't check for EPOLLERR on Linux (diff)
downloadice-be5f41f8ffd74f2651b1db1a61badfd41f17a36d.tar.bz2
ice-be5f41f8ffd74f2651b1db1a61badfd41f17a36d.tar.xz
ice-be5f41f8ffd74f2651b1db1a61badfd41f17a36d.zip
Fixed ICE-5499, new garbage collection support
Diffstat (limited to 'cpp/include/Ice/Object.h')
-rw-r--r--cpp/include/Ice/Object.h16
1 files changed, 4 insertions, 12 deletions
diff --git a/cpp/include/Ice/Object.h b/cpp/include/Ice/Object.h
index 7e568d19a0d..2f2ec7f5e42 100644
--- a/cpp/include/Ice/Object.h
+++ b/cpp/include/Ice/Object.h
@@ -12,7 +12,6 @@
#include <IceUtil/Mutex.h>
#include <IceUtil/Shared.h>
-#include <Ice/GCShared.h>
#include <Ice/ObjectF.h>
#include <Ice/ProxyF.h>
#include <Ice/IncomingAsyncF.h>
@@ -26,6 +25,7 @@ namespace IceInternal
class Incoming;
class BasicStream;
class Direct;
+class GCVisitor;
}
@@ -100,17 +100,9 @@ public:
virtual void __write(const OutputStreamPtr&) const;
virtual void __read(const InputStreamPtr&);
-
- //
- // Virtual methods to support garbage collection of Slice class instances. These
- // methods are overriden by Slice classes which can have cycles.
- //
- virtual void __addObject(IceInternal::GCCountMap&) {}
- virtual bool __usesGC() { return false; }
- void __decRefUnsafe()
- {
- --_ref;
- }
+
+ virtual bool __gcVisit(IceInternal::GCVisitor&) { return false; };
+ virtual void ice_collectable(bool) { };
protected: