0
  • 最佳答案
    1139423796017500160  评论     打赏       断点-含光君
  • 1.可以利用Thread.currentThread().getName();获取当前线程。

    2.执行这个把线程杀了就可以了。实测可以。

    public static boolean killThreadByName(String name) {
        
        ThreadGroup currentGroup = Thread.currentThread().getThreadGroup();
        
        int noThreads = currentGroup.activeCount();
        
        Thread[] lstThreads = new Thread[noThreads];
        
        currentGroup.enumerate(lstThreads);
        Log.d(TAG, "CurrentThread " + noThreads);
        
        for (int i = 0; i < noThreads; i++) {
            
            String nm = lstThreads[i].getName();
            Log.d(TAG, "CurrentThread id " + i + " = " + nm);
            
            if (nm.equals(name)) {
                
                lstThreads[i].interrupt();
                
                return true;
                
            }
            
        }
        
        return false;
        
    }
    


    1173631787251826688  评论     打赏       豪豪好吗
    • 你可以加标记量呀,拿到你的process以后,想停止的时候,直接干掉进程,关流,关资源。

      1162543794353192960  评论     打赏       海饭
      相关问题
      林平 · logcat / run
      2020-04-29 19:06 836 2
      清风ccc · blog
      2021-12-14 06:00 252 2
      豪豪好嘛 · AndroidLog
      2022-12-05 10:47 61 2
      资质平平 · Android
      2025-02-20 09:14 92 100
      尖沙咀-段坤 · 项目
      2025-01-06 23:39 18 2
      雅澤yaduo · 领券联盟
      2025-01-03 20:39 37 50
      呆瓜小董 · webview
      2024-11-30 18:02 68 20
      阿肥 · 鸿蒙next
      2024-10-25 18:07 35 100
      尖沙咀-段坤 · 安卓
      2024-09-11 11:03 31 2