[ace-bugs] [ACE]: [calling purge_pending_notifications() before notify() leads to dead-lock]
Jack Wong
pandawkx at 163.com
Mon Nov 28 02:12:29 CST 2016
ACE VERSION: 6.3.0
(this bug still exists in version 6.4.0)
Our test codes looks like this:
1:while (true)
2:{
3: reactor()->purge_pending_notifications(xxx);
4: reactor()->notify(xxx);
5:}
after a while , we found dead-lock occurs at line 4.
-------------------------
I check the code and found that :
purge_pending_notifications can only purge message in notify queue
messages in pipe can not be purged
so calling notify() after purge_pending_notifications() can always leads one message be write to pipe
So when I keep calling like this , soon buffer of pipe will full and notify() will be blocked , then dead-lock occurs
-------------------------
we are using this two interfaces building important functions of our application
we will appreciate it if this bug being fixed soon
-------------------------
poor English, sorry!
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.isis.vanderbilt.edu/pipermail/ace-bugs/attachments/20161128/cb0bf940/attachment.html>
More information about the ace-bugs
mailing list