Add interrupt_main() to thread module.
This commit is contained in:
parent
efad5880ba
commit
a11e846135
|
@ -278,6 +278,21 @@ PyDoc_STRVAR(exit_doc,
|
|||
This is synonymous to ``raise SystemExit''. It will cause the current\n\
|
||||
thread to exit silently unless the exception is caught.");
|
||||
|
||||
static PyObject *
|
||||
sys_interrupt_main(PyObject * self, PyObject * args)
|
||||
{
|
||||
PyErr_SetInterrupt();
|
||||
Py_INCREF(Py_None);
|
||||
return Py_None;
|
||||
}
|
||||
|
||||
PyDoc_STRVAR(interrupt_doc,
|
||||
"interrupt_main()\n\
|
||||
\n\
|
||||
Raise a KeyboardInterrupt in the main thread.\n\
|
||||
A subthread can use this method to interrupt the main thread."
|
||||
);
|
||||
|
||||
#ifndef NO_EXIT_PROG
|
||||
static PyObject *
|
||||
thread_PyThread_exit_prog(PyObject *self, PyObject *args)
|
||||
|
@ -340,6 +355,8 @@ static PyMethodDef thread_methods[] = {
|
|||
METH_NOARGS, exit_doc},
|
||||
{"exit", (PyCFunction)thread_PyThread_exit_thread,
|
||||
METH_NOARGS, exit_doc},
|
||||
{"interrupt_main", (PyCFunction)sys_interrupt_main,
|
||||
METH_NOARGS, interrupt_doc},
|
||||
{"get_ident", (PyCFunction)thread_get_ident,
|
||||
METH_NOARGS, get_ident_doc},
|
||||
#ifndef NO_EXIT_PROG
|
||||
|
|
Loading…
Reference in New Issue