20 Commits

Author SHA1 Message Date
Martin Sustrik
05d908492d WIP: Socket migration between threads, new zmq_close() semantics
Sockets may now be migrated between OS threads; sockets may not be used by
more than one thread at any time. To migrate a socket to another thread the
caller must ensure that a full memory barrier is called before using the
socket from the target thread.

The new zmq_close() semantics implement the behaviour discussed at:

http://lists.zeromq.org/pipermail/zeromq-dev/2010-July/004244.html

Specifically, zmq_close() is now deterministic and while it still returns
immediately, it does not discard any data that may still be queued for
sending. Further, zmq_term() will now block until all outstanding data has
been sent.

TODO: Many bugs have been introduced, needs testing. Further, SO_LINGER or
an equivalent mechanism (possibly a configurable timeout to zmq_term())
needs to be implemented.
2010-08-25 15:39:20 +02:00
Martin Sustrik
835e893e54 dispatcher_t class renamed to ctx_t 2010-05-05 14:24:54 +02:00
Martin Sustrik
235ed3a3dc signaler transports commands per se rather than one-bit signals 2010-05-04 10:22:16 +02:00
Martin Sustrik
8b9bd05726 thread ID and dispatcher made private in object_t 2010-05-03 16:21:36 +02:00
Martin Sustrik
ae93ed318a signaler rewritten in such a way that any number (>64) of threads can be used 2010-04-29 20:34:48 +02:00
Martin Sustrik
37128b7b1a fd_signaler_t renamed to signaler_t 2010-04-29 17:31:57 +02:00
Martin Sustrik
c193fd1466 lock-free polling removed; ZMQ_POLL flag removed 2010-04-29 17:20:23 +02:00
Martin Lucina
27e2d08449 Restructure language bindings
C and C++ headers moved from bindings/ to include/, bindings/ removed
--with-c and --with-cpp options to configure removed, C and C++ now built
and installed by default
2010-03-11 20:33:27 +01:00
Martin Sustrik
4f6baf4dde Copyrights transferred from FastMQ to iMatix 2010-01-05 08:29:35 +01:00
Martin Sustrik
8aa0908635 all news converted to nothrow variant 2009-12-15 23:49:55 +01:00
Martin Sustrik
4efe2366d7 poller is a concept now rather than virtualised class 2009-10-02 10:46:36 +02:00
Martin Sustrik
f99b8fc921 receiving side of signaler virtualised 2009-09-20 10:47:27 +02:00
Martin Sustrik
50a8b9ea0c 'flags' parameter added to zmq_init 2009-09-20 10:14:21 +02:00
malosek
1b2a426656 c and cpp directories moved into bindings directory 2009-09-16 16:49:09 +02:00
malosek
b71c3005e6 include directory split into c and cpp dirs, added --with-c and --with-cpp configure options 2009-09-07 17:06:47 +02:00
Martin Sustrik
a8b410e66c lockfree interaction patter for 3 theads implemented 2009-08-08 16:01:58 +02:00
Martin Sustrik
0b5cc026fb clean up - session/socket/engine stuff removed 2009-08-06 12:51:32 +02:00
Martin Sustrik
b8b4acef4c dispatcher renamed to context 2009-08-06 10:47:34 +02:00
Martin Sustrik
cc3755a16f renamed from zs to zmq 2009-08-03 11:30:13 +02:00
Martin Sustrik
4ed70a9302 initial commit 2009-07-29 12:07:54 +02:00