diff options
Diffstat (limited to 'cpp')
-rw-r--r-- | cpp/include/IceUtil/Thread.h | 17 | ||||
-rw-r--r-- | cpp/src/IceUtil/Thread.cpp | 13 |
2 files changed, 14 insertions, 16 deletions
diff --git a/cpp/include/IceUtil/Thread.h b/cpp/include/IceUtil/Thread.h index 0d612ce6b07..0b34a35d3ee 100644 --- a/cpp/include/IceUtil/Thread.h +++ b/cpp/include/IceUtil/Thread.h @@ -20,9 +20,20 @@ namespace IceUtil #ifdef WIN32 struct HandleWrapper : public Shared { - HandleWrapper(HANDLE); - - ~HandleWrapper(); + // Inline for performance reasons. + HandleWrapper(HANDLE h) : + handle(h) + { + } + + // Inline for performance reasons. + virtual ~HandleWrapper() + { + if (handle != 0) + { + CloseHandle(handle); + } + } HANDLE handle; }; diff --git a/cpp/src/IceUtil/Thread.cpp b/cpp/src/IceUtil/Thread.cpp index 63ba6ddbdc7..f2121a1e45c 100644 --- a/cpp/src/IceUtil/Thread.cpp +++ b/cpp/src/IceUtil/Thread.cpp @@ -15,19 +15,6 @@ using namespace std; #ifdef WIN32 -IceUtil::HandleWrapper::HandleWrapper(HANDLE h) : - handle(h) -{ -} - -IceUtil::HandleWrapper::~HandleWrapper() -{ - if (handle != 0) - { - CloseHandle(handle); - } -} - IceUtil::ThreadControl::ThreadControl() : _handle(new HandleWrapper(0)), _id(GetCurrentThreadId()) |