summaryrefslogtreecommitdiff
path: root/src/io_thread.cpp
diff options
context:
space:
mode:
authorMartin Sustrik <sustrik@250bpm.com>2012-04-20 07:42:10 +0200
committerMartin Sustrik <sustrik@250bpm.com>2012-04-21 07:30:23 +0200
commit0fb5a016497d3061a6edf40752c06127f3abb796 (patch)
tree6abe36205647f5b8c134954f4d22a0c3c3bc98b1 /src/io_thread.cpp
parent0a12aa09b65c67033b5021057dd04fde0a3cabb5 (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.cpp11
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);