获取不到自己创建的线程

自渡96 2020-08-14 06:10:10
android 创建了个线程并设置了线程名字,通过名字无法找到对应线程(大佬们能否帮忙看下)
获取线程

String threadName = "download";

for (Thread t : Thread.getAllStackTraces().keySet()) {
System.out.println("------------------------------"+t.getName());
if (t.getName().equals(threadName)) {
t.interrupt();//进不来这里
}
}

创建线程

Thread thread = new Thread(new Runnable() {
@Override
public void run() {
try {
Download.download(strResult, handler);
} catch (Exception e) {
e.printStackTrace();
}
}
},threadName);
thread.start();
...全文
6407 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
自渡96 2020-08-17
  • 打赏
  • 举报
回复
引用 1 楼 蓝色的天空ywj 的回复:
很有可能是Download.download下载已经结束了,threadName = "download"这个线程就会自动关闭,然后你在获取这个的时候,可能就找不到这个线程了
我自己的坑,download这里面还有一个线程(暂时命名为线程A),我需要停止的是线程A,所以才导致我找不到线程
闫文敬 2020-08-17
  • 打赏
  • 举报
回复
很有可能是Download.download下载已经结束了,threadName = "download"这个线程就会自动关闭,然后你在获取这个的时候,可能就找不到这个线程了

80,350

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧