Saturday September 17, 2011

[Time] NameMessage
[19:14] shales I'm digging into the internals of 0mq and reading some of the white papers. I'm particular interested how the communication between the application and io threads work.
[19:16] shales I see how when sending a message, the socket adds the message to the pipe, which adds it to a ypipe queue, but I don't see how the io thread gets woken up to handle the message
[19:16] shales can anyone point me to where that is in the code?
[19:26] shales I think I get it now. Flushing the pipe sends an activate reader command.
[19:26] shales Why is it things always make more sense immediately after you ask a question?
[19:29] shales An old whitepaper mentions X-mode where the io threads can cede a socket to the application thread so that it can send a message with minimum latency. Does the current version do this?
[22:31] mikko novas0x2a|laptop: no
[22:31] mikko do you mean the select system call?
[23:28] mikko novas0x2a|laptop: you should only get invocation when there is something to read
[23:29] mikko there might be a small period of time when noblock will still return false
[23:29] mikko i tend to poll and read with blocking