diff options
author | Benoit Foucher <benoit@zeroc.com> | 2007-02-07 20:17:52 +0000 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2007-02-07 20:17:52 +0000 |
commit | ac4f3aa049970f3ab2e9561143d6c5c2cec68391 (patch) | |
tree | c91774d65fcd97ba837e37a3d52f7fc0dd4ef19a /cpp/src/Ice/ThreadPool.cpp | |
parent | fix 'add reference' bug and removed .net - admin account warning from 7.1 (diff) | |
download | ice-ac4f3aa049970f3ab2e9561143d6c5c2cec68391.tar.bz2 ice-ac4f3aa049970f3ab2e9561143d6c5c2cec68391.tar.xz ice-ac4f3aa049970f3ab2e9561143d6c5c2cec68391.zip |
Added ICE_USE_EPOLL
Diffstat (limited to 'cpp/src/Ice/ThreadPool.cpp')
-rw-r--r-- | cpp/src/Ice/ThreadPool.cpp | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/cpp/src/Ice/ThreadPool.cpp b/cpp/src/Ice/ThreadPool.cpp index 78d8383ba54..64460db7284 100644 --- a/cpp/src/Ice/ThreadPool.cpp +++ b/cpp/src/Ice/ThreadPool.cpp @@ -57,7 +57,7 @@ IceInternal::ThreadPool::ThreadPool(const InstancePtr& instance, const string& p _fdsInUse = 1; // _fdIntrRead is always in use. FD_ZERO(&_fdSet); FD_SET(_fdIntrRead, &_fdSet); -#elif defined(__linux) +#elif defined(ICE_USE_EPOLL) _epollFd = epoll_create(1); if(_epollFd < 0) { @@ -197,7 +197,7 @@ IceInternal::ThreadPool::~ThreadPool() out << "exception in `" << _prefix << "' while calling closeSocket():\n" << ex; } -#if defined(__linux) +#if defined(ICE_USE_EPOLL) try { closeSocket(_epollFd); @@ -458,7 +458,7 @@ IceInternal::ThreadPool::run() { ret = ::select(static_cast<int>(_maxFd + 1), &fdSet, 0, 0, 0); } -#elif defined(__linux) +#elif defined(ICE_USE_EPOLL) ret = epoll_wait(_epollFd, &_events[0], _events.size(), _timeout > 0 ? _timeout * 1000 : -1); #elif defined(__APPLE__) if(_timeout > 0) @@ -509,7 +509,7 @@ IceInternal::ThreadPool::run() bool interrupted = false; #if defined(_WIN32) interrupted = FD_ISSET(_fdIntrRead, &fdSet); -#elif defined(__linux) +#elif defined(ICE_USE_EPOLL) for(int i = 0; i < ret; ++i) { if(_events[i].data.fd == _fdIntrRead) @@ -568,7 +568,7 @@ IceInternal::ThreadPool::run() _handlerMap.insert(change); #if defined(_WIN32) FD_SET(change.first, &_fdSet); -#elif defined(__linux) +#elif defined(ICE_USE_EPOLL) epoll_event event; event.events = EPOLLIN; event.data.fd = change.first; @@ -610,7 +610,7 @@ IceInternal::ThreadPool::run() _handlerMap.erase(p); #if defined(_WIN32) FD_CLR(change.first, &_fdSet); -#elif defined(__linux) +#elif defined(ICE_USE_EPOLL) epoll_event event; event.events = 0; if(epoll_ctl(_epollFd, EPOLL_CTL_DEL, change.first, &event) != 0) @@ -672,7 +672,7 @@ IceInternal::ThreadPool::run() for(u_short i = 0; i < fdSet.fd_count; ++i) { SOCKET fd = fdSet.fd_array[i]; -#elif defined(__linux) +#elif defined(ICE_USE_EPOLL) for(int i = 0; i < ret; ++i) { SOCKET fd = _events[i].data.fd; @@ -697,7 +697,7 @@ IceInternal::ThreadPool::run() smallestFd = min(smallestFd, fd); } -#ifdef never // To match __linux __APPLE +#ifdef never // To match ICE_USE_EPOLL __APPLE }}} #endif if(largerFd <= _maxFd) |