espalemit_re 2021-10-21 09:55 采纳率: 50%
浏览 21
已结题

关于线程 以及业务逻辑上的一些问题

现在的需求是前端的一个终止任务按钮,然后后端的线程停止运行
但是现在的后端是通过定时器去循环查询数据库 然后开启子线程把查询到的数据进行一些业务逻辑的修改 保存到数据库当中 使用的线程池是ThreadPoolExecutor
现在的一个问题是 我应该怎么样去线程池当中指定某个线程去关闭?

  • 写回答

1条回答 默认 最新

  • maradona1984 2021-10-21 10:07
    关注

    首先我没有这么玩过,但一般解决问题的思路就是
    1.这个按钮的请求如何获取线程池中的具体线程?这个可能跟你的业务有关,将线程对象绑到map中,通过预设的名称获取之类的
    2.如何kill掉这个线程?通过1问题获取到的线程,调用interrupt()方法,只是这个是否会影响该线程在线程池中后续工作,我是不太确定的.
    3.当然还有侵入性的做法,就是在目标代码中加上退出标记,按钮的请求就是修改这个标记的值,这个密度就该你自己考虑了,比较丑陋但简单的实现

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月29日
  • 已采纳回答 10月21日
  • 创建了问题 10月21日

悬赏问题

  • ¥15 前端echarts坐标轴问题
  • ¥15 CMFCPropertyPage
  • ¥15 ad5933的I2C
  • ¥15 请问RTX4060的笔记本电脑可以训练yolov5模型吗?
  • ¥15 数学建模求思路及代码
  • ¥50 silvaco GaN HEMT有栅极场板的击穿电压仿真问题
  • ¥15 谁会P4语言啊,我想请教一下
  • ¥15 这个怎么改成直流激励源给加热电阻提供5a电流呀
  • ¥50 求解vmware的网络模式问题 别拿AI回答
  • ¥24 EFS加密后,在同一台电脑解密出错,证书界面找不到对应指纹的证书,未备份证书,求在原电脑解密的方法,可行即采纳