<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hi Jack,<div class=""><br class=""></div><div class="">Thank you for this analysis. Since you have gone so far to research the cause, do you have a recommended solution? If so, please submit a pull request to <a href="https://github.com/DOCGroup/ACE_TAO" class="">https://github.com/DOCGroup/ACE_TAO</a></div><div class=""><br class=""></div><div class="">Given the apparent urgency of your request, I suggest you investigate commercial support. Take a look at <a href="http://www.cs.wustl.edu/~schmidt/commercial-support.html" class="">http://www.cs.wustl.edu/~schmidt/commercial-support.html</a> for a list of vendors.</div><div class=""><br class=""></div><div class="">Finally, I suggest you create a bug report in bugzilla: <a href="http://bugzilla.dre.vanderbilt.edu/" class="">http://bugzilla.dre.vanderbilt.edu/</a></div><div class=""><br class=""></div><div class="">It would be helpful if you can prepare a runnable test that demonstrates the problem and submit that with your pull request and / or the bugzilla entry. Take a look at any of the ACE/tests as an example. Also, be sure to say what platforms are affected, windows, linux, etc.</div><div class=""><br class=""></div><div class="">The bugzilla entry is particularly important if you are unable to provide a fix or fund the development of one. In that case, it may take a while for someone to come up with an acceptable solution gratis.</div><div class=""><br class=""></div><div class="">Best Regards,</div><div class="">Phil</div><div class=""><br class=""></div><div class=""><div><blockquote type="cite" class=""><div class="">On Nov 28, 2016, at 2:12 AM, Jack Wong <<a href="mailto:pandawkx@163.com" class="">pandawkx@163.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div style="line-height: 1.7; font-size: 14px; font-family: Arial;" class=""><div class=""><span style="font-family: arial; white-space: pre-wrap; widows: 1;" class="">ACE VERSION: 6.3.0</span></div><div class="">(this bug still exists in version 6.4.0)</div><div class=""><br class=""></div><div class="">Our test codes looks like this:</div><div class=""><br class=""></div><div class="">1:while (true)</div><div class="">2:{</div><div class="">3:    reactor()->purge_pending_notifications(xxx);</div><div class="">4:    reactor()->notify(xxx);</div><div class="">5:}</div><div class=""><br class=""></div><div class="">after a while , we found dead-lock occurs at  line 4.</div><div class=""><br class=""></div><div class="">-------------------------</div><div class=""><br class=""></div><div class="">I check the code and found that :</div><div class=""><br class=""></div><div class="">purge_pending_notifications can only purge message in notify queue</div><div class=""><br class=""></div><div class="">messages in pipe can not be purged</div><div class=""><br class=""></div><div class="">so calling notify() after purge_pending_notifications() can always leads one message be write to pipe</div><div class=""><br class=""></div><div class="">So when I keep calling like this , soon buffer of pipe will full and notify() will be blocked , then dead-lock occurs</div><div class=""><br class=""></div><div class="">-------------------------</div><div class=""><br class=""></div><div class="">we are using this two interfaces building important functions of our application</div><div class=""><br class=""></div><div class="">we will appreciate it if this bug being fixed soon</div><div class=""><br class=""></div><div class="">-------------------------</div><div class=""><br class=""></div><div class="">poor English, sorry!</div></div><br class=""><br class=""><span title="neteasefooter" class=""><div class=""> <br class="webkit-block-placeholder"></div></span>_______________________________________________<br class="">ace-bugs mailing list<br class=""><a href="mailto:ace-bugs@list.isis.vanderbilt.edu" class="">ace-bugs@list.isis.vanderbilt.edu</a><br class="">http://list.isis.vanderbilt.edu/cgi-bin/mailman/listinfo/ace-bugs</div></blockquote></div><br class=""><div class="">
<div style="color: rgb(0, 0, 0); letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div style="color: rgb(0, 0, 0); letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class=""><div style="font-size: 12.8px;" class=""><div style="margin: 0px; padding: 0px; border: 0px;" class=""><span style="font-family: arial, helvetica, sans-serif; font-size: large;" class="">--</span></div><div style="margin: 0px; padding: 0px; border: 0px;" class=""><span style="font-family: arial, helvetica, sans-serif; font-size: large;" class="">Phil Mesnier</span><br class=""></div></div><div style="font-size: 12.8px;" class=""><div style="font-size: 12.8px;" class=""><font face="arial, helvetica, sans-serif" size="2" class="">Principal Engineer & Partner</font></div><div style="font-size: 12.8px;" class=""><font face="arial, helvetica, sans-serif" class=""><br class=""></font></div><div style="font-size: 12.8px;" class=""><span style="font-family: arial, helvetica, sans-serif;" class=""><font size="2" color="#000000" class="">OCI | WE ARE SOFTWARE ENGINEERS.</font></span></div><div style="font-size: 12.8px;" class=""><span style="font-family: arial, helvetica, sans-serif; font-size: x-small;" class="">tel  +1.314.579.0066 x225</span><br class=""></div><div style="font-size: 12.8px;" class=""><a href="http://ociweb.com/" target="_blank" class="">ociweb.com</a></div><div class=""><br class=""></div></div></div></div><br class="Apple-interchange-newline"></div><br class="Apple-interchange-newline"><br class="Apple-interchange-newline">
</div>
<br class=""></div></body></html>