<div dir="ltr">Hey neat - I hadn't really noticed pyczmq before!  If you don't mind, I'd like to fork it this week just to play with adding support for the zproxy class I added to czmq (it's not in a stable release yet).  I haven't played with CFFI before and would enjoy the opportunity to play with it and bother folks with questions.  :)<div>
<br></div><div>Brian</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Nov 18, 2013 at 3:16 AM, Michael Haberler <span dir="ltr"><<a href="mailto:mail17@mah.priv.at" target="_blank">mail17@mah.priv.at</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Michel,<br>
<br>
Am 18.11.2013 um 04:52 schrieb Michel Pelletier <<a href="mailto:pelletier.michel@gmail.com">pelletier.michel@gmail.com</a>>:<br>
<div class="im"><br>
> This uses ctypes.Structure.from_buffer to copy objects to and from an mmaped file with no serialization, in theory the only serializing happens "out of process" by the kernel to and from the mapped file.  Maybe some ideas here might help?<br>

<br>
</div>well, it was all in place anyway - it turns out that using zframe.data(f) is sufficient because this supports enough of the buffer protocol to work:<br>
<br>
 f = zframe.recv(socket)<br>
 self.rx.ParseFromString(zframe.data(f))<br>
<br>
the sending side just becomes:<br>
<br>
 zframe.send(zframe.new(self.tx.SerializeToString()), socket, 0)<br>
<br>
---<br>
<br>
re keyboard interrupt: I solved this by testing for  zpoller.terminated(poller) in the inner loop which I prefer anyway since it's synchronous delivery.<br>
<br>
<br>
<br>
I think what warrants some thought longer term: if errors from pyczmq calls should raise exceptions or not. It's a very C-ish interface which requires a lot of asserts around calls.<br>
<div class="HOEnZb"><div class="h5"><br>
<br>
- Michael<br>
<br>
<br>
_______________________________________________<br>
zeromq-dev mailing list<br>
<a href="mailto:zeromq-dev@lists.zeromq.org">zeromq-dev@lists.zeromq.org</a><br>
<a href="http://lists.zeromq.org/mailman/listinfo/zeromq-dev" target="_blank">http://lists.zeromq.org/mailman/listinfo/zeromq-dev</a><br>
</div></div></blockquote></div><br></div>