Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android ndk 如何向Android NDK进程发送sigint信号?_Android Ndk_Signals - Fatal编程技术网

Android ndk 如何向Android NDK进程发送sigint信号?

Android ndk 如何向Android NDK进程发送sigint信号?,android-ndk,signals,Android Ndk,Signals,我正在java AsyncTask中运行一个本机方法,它等待ctrl+c或SIGINT信号完成 这个停止信号应该由java发出,但是系统(“kill-INT-1”)在通过jni调用时似乎没有效果。如何向第一个NDK调用发送sigint?首先,异步任务不是进程,而是线程。Android进程中的一个SIGINT将导致整个应用程序崩溃。第二,异步任务需要很长时间吗?第三,它是否将所有时间都花在本机代码上(与Java相反)?一定有比发送信号更好的方法发送异步戳。信号是一种迟钝的工具。非常感谢你的解释。A

我正在java AsyncTask中运行一个本机方法,它等待ctrl+c或SIGINT信号完成


这个停止信号应该由java发出,但是
系统(“kill-INT-1”)在通过jni调用时似乎没有效果。如何向第一个NDK调用发送sigint?

首先,异步任务不是进程,而是线程。Android进程中的一个SIGINT将导致整个应用程序崩溃。第二,异步任务需要很长时间吗?第三,它是否将所有时间都花在本机代码上(与Java相反)?一定有比发送信号更好的方法发送异步戳。信号是一种迟钝的工具。非常感谢你的解释。AsyncTask调用运行中的本机方法,直到我手动停止它,并且它只保留在本机代码中。我不一定需要使用信号,这是目前为止最简单的方法。本机方法中是否存在等待/忙碌循环?您不能引入一个“请退出”全局可变变量,并且set来自主线程中的本机方法吗?比信号便宜得多。据我所知,NDK中没有全局变量?当然有。NDK代码是C或C++,C是全局的。查一查。