diff options
Diffstat (limited to 'cpp')
-rw-r--r-- | cpp/include/IceUtil/Thread.h | 7 | ||||
-rw-r--r-- | cpp/src/IceUtil/Thread.cpp | 5 |
2 files changed, 12 insertions, 0 deletions
diff --git a/cpp/include/IceUtil/Thread.h b/cpp/include/IceUtil/Thread.h index a3fab31c5c9..b332d43fb4a 100644 --- a/cpp/include/IceUtil/Thread.h +++ b/cpp/include/IceUtil/Thread.h @@ -89,10 +89,17 @@ private: class ICE_UTIL_API Thread : virtual public IceUtil::Shared { public: +#ifdef _WIN32 + typedef unsigned ThreadId; +#else + typedef pthread_t ThreadId; +#endif Thread(); virtual ~Thread(); + pthread_t id() const; + virtual void run() = 0; ThreadControl start(); diff --git a/cpp/src/IceUtil/Thread.cpp b/cpp/src/IceUtil/Thread.cpp index d26ce987e8a..42fed3cb301 100644 --- a/cpp/src/IceUtil/Thread.cpp +++ b/cpp/src/IceUtil/Thread.cpp @@ -99,6 +99,11 @@ IceUtil::Thread::~Thread() { } +IceUtil::Thread::id() const +{ + return _id; +} + static void* startHook(void* arg) { |