<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Jun 18, 2013 at 4:54 AM, Michael Klishin <span dir="ltr">&lt;<a href="mailto:michael.s.klishin@gmail.com" target="_blank">michael.s.klishin@gmail.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div><br><div class="gmail_quote">2013/6/18 Tim Watson <span dir="ltr">&lt;<a href="mailto:tim@rabbitmq.com" target="_blank">tim@rabbitmq.com</a>&gt;</span><br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

And message ordering between threads sharing that channel doesn&#39;t matter, presumably?</blockquote></div><br></div>Good point.<br><br clear="all"><div>Sharing channels between threads that publish is generally a bad idea: most clients don&#39;t offer synchronization and frames may get interleaved in</div>



<div>an incorrect way. So for N publishers, you need N channels.</div><div><br></div><div>Sharing channels between threads that consume may be safe but it really depends on whether you need message processing order guarantees</div>



<div>and if any of the consumers share a queue.</div></div></div></blockquote><div><br></div><div>rabbitmq-c doesn&#39;t synchronize use of any part of the connection. Using a rabbitmq-c object from multiple threads requires external synchronization. Additionally if you want to consume messages in one thread while executing other AMQP methods in another using the same connection there is some knowledge of the AMQP protocol required in order not to transmit a method at inappropriate moment between frames.</div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr"><div class="gmail_extra"><div>-- <br>MK<br><br><a href="http://github.com/michaelklishin" target="_blank">http://github.com/michaelklishin</a><br><a href="http://twitter.com/michaelklishin" target="_blank">http://twitter.com/michaelklishin</a><br>




</div></div></div>
<br>_______________________________________________<br>
rabbitmq-discuss mailing list<br>
<a href="mailto:rabbitmq-discuss@lists.rabbitmq.com" target="_blank">rabbitmq-discuss@lists.rabbitmq.com</a><br>
<a href="https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss" target="_blank">https://lists.rabbitmq.com/cgi-bin/mailman/listinfo/rabbitmq-discuss</a><br>
<br></blockquote></div><br></div></div>