Android 如何停止新线程(new Runnable())

Android 如何停止新线程(new Runnable()),android,Android,如何停止新建线程(new Runnable())。运行 我是android开发新手:D,我需要你的帮助:) 我有这个代码,我想在执行后停止它 new Thread(new Runnable() { @Override public void run() { Log.e("MotionLogger", "SU"); Log.i(TAG, "click " + Thread.currentThread().toStri

如何停止新建
线程(new Runnable())。运行

我是android开发新手:D,我需要你的帮助:)


我有这个代码,我想在执行后停止它

      new Thread(new Runnable() {
         @Override public void run() {
             Log.e("MotionLogger", "SU");
             Log.i(TAG, "click " + Thread.currentThread().toString());

             try {
                 finalCommandLine.writeBytes(command.toString() + '\n');
                 finalCommandLine.writeBytes("exit\n");
                 finalCommandLine.flush();
                 finalCommandLine.close();
                 finalSuShell.waitFor();
             } catch (IOException e1) {
                 e1.printStackTrace();
             } catch (InterruptedException e1) {
                 e1.printStackTrace();
             }
         }

     }).start();

提前感谢:)

在您的情况下,您可以使用thread.interrupt

如果您想在UI线程上运行,也可以创建这样的处理程序

Handler handler= new Handler();
然后像这样创建Runnable

Runnable runnable= new Runnable() {
        public void run() {
            //do your work here
        }
    };
//start like this
runnable.run();
//stop like this
handler.removeCallbacks(runnable);

查看并执行“我想在执行后停止它”-一旦其
run()
方法返回,线程将自动终止。你不必为此做任何事情。停止运行线程我想它应该是handler.post(运行)?这只会在UI线程上运行,不是他要求的。是的,这会在UI线程上运行。