如何终止使用本地方法运行的android线程?

时间:2013-06-03 09:39:08

标签: android multithreading native

我需要在调用app_exit()之前终止我的后台线程,但有时线程仍在运行本机方法,我怎么能杀死它?线程只调用一个本机函数,通常它会在本机函数返回后完成运行。如果本机函数没有返回,有没有办法终止线程?

 testthread = new thread(){
      @Override
      public void run(){
           ret = nativeMethod();
      }
 };

 testthread.start();

谢谢!

1 个答案:

答案 0 :(得分:0)

这将是一个纯粹的java解决方案。 (没有android API)
如果必须等待本机调用结束,请在exit函数中等待它。例如。使用CountDownLatch这是最简单的方法(退出await,线程中countDown,调用本机方法之后),或使用wait / notify。