diff options
Diffstat (limited to 'src/pub.hpp')
-rw-r--r-- | src/pub.hpp | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/pub.hpp b/src/pub.hpp index 89c1cd1..ac3924a 100644 --- a/src/pub.hpp +++ b/src/pub.hpp @@ -49,16 +49,17 @@ namespace zmq private: - // Outbound pipes, i.e. those the socket is sending messages to. - typedef yarray_t <class writer_t> out_pipes_t; - out_pipes_t out_pipes; + // Write the message to the pipe. Make the pipe inactive if writing + // fails. In such a case false is returned. + bool write (class writer_t *pipe_, zmq_msg_t *msg_); - // Pointer to the pipe we are waiting for to became writable - // again; NULL if tha last send operation was successful. - class writer_t *stalled_pipe; + // Outbound pipes, i.e. those the socket is sending messages to. + typedef yarray_t <class writer_t> pipes_t; + pipes_t pipes; - // Check whether we can write a message to all pipes. - bool check_write (); + // Number of active pipes. All the active pipes are located at the + // beginning of the pipes array. + pipes_t::size_type active; pub_t (const pub_t&); void operator = (const pub_t&); |