summaryrefslogtreecommitdiff
path: root/src/select.cpp
AgeCommit message (Collapse)Author
2012-05-02Conditionally include header files required by select() and poll()Gabriele Svelto
Feature checks are introduced to check for all the headers required by the select() and poll() calls. Include files are then included conditionally without the use of any OS-specific directive. The change also fixes a couple of problems: - Fixed compilation under FreeBSD, NetBSD and OpenBSD when forcing the use of select() in the poller - Quieted a warning mixed-sign comparison warning on FreeBSD caused by FD_SETSIZE being declared as an unsigned constant on that OS - Removed the obsolescent AC_HEADER_TIME macro from the configure script Signed-off-by: Gabriele Svelto <gabriele.svelto@gmail.com>
2012-04-21Select polling mechanisms at one placeMartin Sustrik
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>
2012-04-15thread_t rewritten in C styleMartin Sustrik
thread_t is one of the classes where C++ syntax creates more problems then it solves. This patch converts it into simple C-style pseudo-class. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2012-02-16Full name of the project used in license headersMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2012-02-16poller_base_t renamed to io_thread_tMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2012-02-16Polling mechnisms updated to cope with io_thread_t removalMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2012-02-16Intercept start() and stop() calls in poller_base_tMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2012-02-16i_poll_events interface moved to poller_base.hppMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2012-02-16Simplify mechanism for choosing polling mechanismMartin Sustrik
Till now the selection process was implemented both in autotools build system and in the code itself. From now on, it's exclusively build system's taks to choose the right polling mechanism. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2012-02-16Polling handle is a fixed type now.Martin Sustrik
Polling handle type was previously dependent on polling mechanism used. Now it is void* in all cases. This patch is a first step in the long way to separate the transports from the core library. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2012-02-16File descriptor passed to in_event and out_eventMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2012-02-16ZeroMQ renamed to CrossroadsMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-11-01Copyright dates adjusted to reflect realityMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-10-31250bpm copyrights addedMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-07-24Only one polling mechanism is compiledMartin Sustrik
Till now wrappers for all the polling mechanisms available on the given platform were compiled, although only one of them was used. This patch compiles just the used one. This can make libzmq binary more concise. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-18Refactor Windows versioning and WinSock usage.Signed-off-by: Steven McCoy ↵Steven McCoy
<steven.mccoy@miru.hk>
2011-06-13Reverting previous commit that broke MSVC2010 buildMartin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-06-12Fix scope on Windows includes.Steven McCoy
Fix windows.h included before winsock2.h. Remove definition of _WINSOCKAPI_. Signed-off-by: Steven McCoy <steven.mccoy@miru.hk>
2011-05-15Fixes warning when compiling with MSVC on Win64Martin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-03-02The copyrights in file headers updated.Martin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2011-01-18Fix cppcheck warnings: Prefer prefix ++/-- operators for non-primitive types.Martin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-04Previous FD_STSIZE patch reverted.Martin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-04FD_SETSIZE for internal polling defaults to 1024Martin Sustrik
If, when compiling 0MQ you don't set FD_SETSIZE, it defaults to 1024 rather than to 64. Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-11-01select now uses Erase-Remove idiom for retired fdsMikael Helbo Kjaer
Signed-off-by: Mikael Helbo Kjaer <mhk@designtech.dk>
2010-10-30Name of "GNU Lesser Public License" corrected.Martin Sustrik
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
2010-10-15Cast execute_timers() result to intMikko Koppanen
Signed-off-by: Mikko Koppanen <mkoppanen@php.net>
2010-10-09Execute the timers before pollset initialisation.Christian Gudrian
Since executing the timers might modify the source pollsets we have to defer the initialisation until after the timers have executed. Signed-off-by: Christian Gudrian <christian.gudrian@fluidon.com>
2010-09-27MSVC build fixedMartin Sustrik
2010-09-26timers properly implementedMartin Sustrik
2010-09-26common base for all pollers created; the only thing it handles at the moment ↵Martin Sustrik
is 'load'
2010-09-26new interfaces for timers; the implementation is not changed yetMartin Sustrik
2010-09-04zmq::select_t, zmq_poll(): assert if FD_SETSIZE reachedMartin Lucina
Ensure that 0MQ does not attempt to call select() on more than FD_SETSIZE file descriptors.
2010-09-01Erasure of retired fd's in select.cpp causes an assertion in MSVC 2008 STLMikael Helbo Kjær
I was hitting an issue with an SCL enabled STL library in connection with the way select_t::loop was erasing retired fd's. The problem as identified by the SCL assertion was that by the time the iterator given to the erase method was called it was considered invalid by the library. I am not sure this isn't just a "quirk" of the MSVC STL library as the other code looks valid to me as well.
2010-01-05Copyrights transferred from FastMQ to iMatixMartin Sustrik
2009-10-02poller is a concept now rather than virtualised classMartin Sustrik
2009-09-14ZMQII-1: Win32 - failure on shutdownMartin Sustrik
2009-08-06clean up - session/socket/engine stuff removedMartin Sustrik
2009-08-03renamed from zs to zmqMartin Sustrik
2009-07-29initial commitMartin Sustrik