embedding: forcing an interpreter to end
Peter Hansen
peter at engcorp.com
Wed Dec 22 10:20:28 EST 2004
pdectm at yahoo.com wrote:
> Well, the app is multi-threaded, so I do have a big issue getting
> control back to my C program. I just can not seem to cleanly stop the
> interpreter. The best I could do is:
>
> void terminateInterpreter( PyInterpreterState *interp )
[...]
> PyThreadState_SetAsyncExc(interp->tstate->thread_id, exc);
> Py_DECREF(exc);
As I recall, there is a return value from SetAsyncExc()
which according to the documentation you *must* check
and handle appropriately if you want to avoid some
unspecified Bad Things from happening.
There was some recent (2-3 weeks ago?) discussion in the
newsgroup/mailing list about this as well, if you want
to check the archives.
-Peter
More information about the Python-list
mailing list