hetian9288 / pyactivemq

Automatically exported from code.google.com/p/pyactivemq
Apache License 2.0
0 stars 0 forks source link

Release GIL if MessageListener throws exception #12

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
The Global Interpreter Lock might not be released if the MessageListener
throws an exception from Python.

Original issue reported on code.google.com by fullung@gmail.com on 1 Jun 2007 at 11:23

GoogleCodeExporter commented 8 years ago

Original comment by fullung@gmail.com on 1 Jun 2007 at 11:28

GoogleCodeExporter commented 8 years ago

Original comment by fullung@gmail.com on 6 Jun 2007 at 12:16

GoogleCodeExporter commented 8 years ago
We now catch error_already_set in the C++ part of MessageListener. At this 
point the
only sensible thing that can probably be done is to ignore the exception. 
Perhaps a
stack trace should be printed.

We might also want to terminate the interpreter for the special case of a
KeyboardInterrupt exception being raised.

Original comment by fullung@gmail.com on 6 Jun 2007 at 8:57

GoogleCodeExporter commented 8 years ago
Exception is printed to sys.stderr instead of passing silently by. Closing this 
for
now. Pressing Ctrl-C twice kills the process even if the first KeyboardInterrupt
prints and then "hangs", so I'm leaving this for now.

Original comment by fullung@gmail.com on 6 Jun 2007 at 9:08