[C++-sig] Why can't kill process by Ctrl-c in a boost.python module with an endless loop
Jaedyn K. Draper
jaedyn.cppsig at jaedyn.co
Sun Dec 23 08:58:21 CET 2012
Oh, my mistake. Not sure then, I've only embedded, never extended. Maybe
someone else can help. :(
On 12/23/2012 1:59 AM, simon zhang wrote:
> But I don't call Py_Initialize().I call C++ code in
> Python.Don't embed the Python to C++...
>
> 2012/12/23 Jaedyn K. Draper <jaedyn.cppsig at jaedyn.co
> <mailto:jaedyn.cppsig at jaedyn.co>>
>
> Instead of Py_Initialize() (wherever it is you call it), try
> calling Py_InitializeEx(0). Py_Initialize() (or
> Py_InitializeEx(1)) binds signal handlers (including SIGINT) to
> send python exceptions instead of killing the process. This may be
> what's hitting you.
>
>
> On 12/23/2012 1:44 AM, simon zhang wrote:
>> I have make a boost.python module with an endless loop.But I
>> can't kill the process by ctrl-c.The following is an example.
>>
>> C++
>>
>> |#include <boost/python.hpp>
>> #include <boost/python.
>> module.hpp>
>> #include <boost/python.
>> def.hpp>
>> #include <iostream>
>> usringnamespace boost::python;
>>
>> void foo() {
>> int it=0;
>> while (true) { //endless loop
>> ++it;
>> std::cout<< it<<std::endl;
>> sleep(3);
>> }
>> }
>>
>> BOOST_PYTHON_MODULE(ctopy)
>> {
>> def("foo",foo);
>> }|
>>
>> python:
>>
>> |import ctopy
>> ctopy.foo()|
>>
>> result:
>>
>> |1
>> 2
>> 3
>> 4
>> .....................|
>>
>> I can't kill the foreground process by Ctrl-c.why the module
>> don't accept signal "SIGINT" that was sent by Ctrl-c.How to make
>> it work.
>>
>>
>>
>> _______________________________________________
>> Cplusplus-sig mailing list
>> Cplusplus-sig at python.org <mailto:Cplusplus-sig at python.org>
>> http://mail.python.org/mailman/listinfo/cplusplus-sig
>
>
> _______________________________________________
> Cplusplus-sig mailing list
> Cplusplus-sig at python.org <mailto:Cplusplus-sig at python.org>
> http://mail.python.org/mailman/listinfo/cplusplus-sig
>
>
>
>
> _______________________________________________
> Cplusplus-sig mailing list
> Cplusplus-sig at python.org
> http://mail.python.org/mailman/listinfo/cplusplus-sig
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/cplusplus-sig/attachments/20121223/f9009b77/attachment-0001.html>
More information about the Cplusplus-sig
mailing list