summaryrefslogtreecommitdiff
path: root/cpp/include/IceUtil/Timer.h
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/include/IceUtil/Timer.h')
-rw-r--r--cpp/include/IceUtil/Timer.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/cpp/include/IceUtil/Timer.h b/cpp/include/IceUtil/Timer.h
index c284187797e..d3d37b99d2e 100644
--- a/cpp/include/IceUtil/Timer.h
+++ b/cpp/include/IceUtil/Timer.h
@@ -43,7 +43,7 @@ typedef IceUtil::Handle<TimerTask> TimerTaskPtr;
// repeated execution. Tasks are executed by the dedicated timer thread
// sequentially.
//
-class ICE_UTIL_API Timer : public virtual IceUtil::Shared, private virtual IceUtil::Thread
+class ICE_UTIL_API Timer : virtual public IceUtil::Shared, private IceUtil::Thread
{
public:
@@ -83,7 +83,10 @@ public:
//
bool cancel(const TimerTaskPtr&);
-private:
+protected:
+
+ virtual void run();
+ virtual void runTimerTask(const TimerTaskPtr&);
struct Token
{
@@ -95,8 +98,6 @@ private:
inline bool operator<(const Token& r) const;
};
- virtual void run();
-
IceUtil::Monitor<IceUtil::Mutex> _monitor;
bool _destroyed;
std::set<Token> _tokens;