diff options
author | Martin Sustrik <sustrik@250bpm.com> | 2012-04-20 07:42:10 +0200 |
---|---|---|
committer | Martin Sustrik <sustrik@250bpm.com> | 2012-04-21 07:30:23 +0200 |
commit | 0fb5a016497d3061a6edf40752c06127f3abb796 (patch) | |
tree | 6abe36205647f5b8c134954f4d22a0c3c3bc98b1 /src/io_thread.cpp | |
parent | 0a12aa09b65c67033b5021057dd04fde0a3cabb5 (diff) |
Select polling mechanisms at one place
This patch provides a single place for selecting polling mechanisms
(polling.hpp). Up to now the selection was spread among the build
system and several source files.
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
Diffstat (limited to 'src/io_thread.cpp')
-rw-r--r-- | src/io_thread.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/io_thread.cpp b/src/io_thread.cpp index df5a623..c363592 100644 --- a/src/io_thread.cpp +++ b/src/io_thread.cpp @@ -21,6 +21,7 @@ #include "io_thread.hpp" #include "err.hpp" +#include "polling.hpp" #include "select.hpp" #include "poll.hpp" #include "epoll.hpp" @@ -30,15 +31,15 @@ xs::io_thread_t *xs::io_thread_t::create (xs::ctx_t *ctx_, uint32_t tid_) { io_thread_t *result; -#if defined XS_HAVE_SELECT +#if defined XS_USE_ASYNC_SELECT result = new (std::nothrow) select_t (ctx_, tid_); -#elif defined XS_HAVE_POLL +#elif defined XS_USE_ASYNC_POLL result = new (std::nothrow) poll_t (ctx_, tid_); -#elif defined XS_HAVE_EPOLL +#elif defined XS_USE_ASYNC_EPOLL result = new (std::nothrow) epoll_t (ctx_, tid_); -#elif defined XS_HAVE_DEVPOLL +#elif defined XS_USE_ASYNC_DEVPOLL result = new (std::nothrow) devpoll_t (ctx_, tid_); -#elif defined XS_HAVE_KQUEUE +#elif defined XS_USE_ASYNC_KQUEUE result = new (std::nothrow) kqueue_t (ctx_, tid_); #endif alloc_assert (result); |