`
henghengdh
  • 浏览: 154211 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

如何令java线程池中线程超过5分钟时该线程自杀

    博客分类:
  • java
 
阅读更多
用双线程实现。他杀。
每当一个线程从池中被取出的时候,给该线程分配一个UUID用于标志此次任务,同时启动另外一个杀手线程开始计时(即sleep),并且该杀手线程持有同样UUID用于寻找要杀死的目标。

当杀手觉醒后即刻检查:
  1.如果目标线程已归还到池中,说明目标线程在规定时间前已结束。则不做任何操作。
  2.如果目标线程还在池外,但是其UUID与自己所持目标UUID不一致,说明所监视的线程正常结束后被再次取出使用。交由另外一个杀手线程处理,本杀手不做任何操作。
  3.如果目标线程仍在池外并且所持UUID与目标UUID一致(bingo!),则杀死该线程,并把尸体归还池中。

public void run() {
while (true) {
    if (Thread.currentThread().isInterrupted()) {
        return;
    }
    // do something
    Thread.sleep(sleepTime);
} catch (InterruptedException e) {
    Thread.currentThread().interrupt();
}
分享到:
评论

相关推荐

    java多线程,对多线程,线程池进行封装,方便使用

    java多线程,对多线程,线程池进行封装,方便使用

    Java简单线程池 线程池中文文档

    简单的线程池程序+中文文档 包结构: com.tangkai.threadpool --SimpleThread.java 工作线程 --TestThreadPool.java 程序入口 --ThreadPoolManager.java 线程池管理类

    JAVA使用线程池查询大批量数据

    JAVA使用线程池查询大批量数据

    C#线程池 所有线程运行完毕

    C#线程池 所有线程运行完毕,只是测试代码,用来弄清楚,打印信息很明确,适合初学者

    Java线程池文档

    Java 线程池学习 ...[3]中介绍了Java中线程池的类体系结构。 [4]中有ThreadPoolExecutor的实例应用。 [5]中有线程池的实例讲解,实现了一个基于线程池的端口监听服务器。★ [6]中有对源码比较细致的分析

    java线程池使用后到底要关闭吗

    主要给大家介绍了关于java线程池使用后到底要不要关闭的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    Java多线程Executors批量执行数据实现限流

    Java多线程实现数据切割批量执行,实现限流操作。 java线程池Executors实现数据批量操作。 批量异步Executors处理数据,实现限流操作,QPS限流。 线程池调用第三方接口限流实现逻辑。 案例适合: 1.批量处理大数据。...

    一个通用的Java线程池类

    目标:Java中多线程技术是一个难点,但是也是一个核心技术。因为Java本身就是一个多线程语言。本人目前在给46班讲授Swing的网络编程--使用Swing来模拟真实的QQ实时聊天软件。因为涉及到Socket编程,所以一定会使用多...

    Java中多线程的使用线程池.docx

    线程池是一个容纳多个线程的容器,线程池中的线程可以重复使用,无需反复创建线程而消耗过多的资源 * 使用多线程的好处: 1.降低消耗,减少了创建和销毁线程的次数,每个线程都可以重复利用,可执行多个任务 2.提高...

    java线程池ThreadPoolExecutor类使用详解.docx

    在《阿里巴巴java开发手册》中指出了线程资源必须通过线程池提供,不允许在应用中自行显示的创建线程,这样一方面是线程的创建更加规范,可以合理控制开辟线程的数量;另一方面线程的细节管理交给线程池处理,优化了...

    Java实现通用线程池

    Java 实现通用线程池是指使用 Java 语言编写一个通用的线程池,线程池通俗的描述就是预先创建若干空闲线程,等到需要用多线程去处理事务的时候去唤醒某些空闲线程执行处理任务,这样就省去了频繁创建线程的时间,...

    Java线程池及观察者模式解决多线程意外死亡重启问题

    Java线程池及观察者模式解决多线程意外死亡重启问题,附件含两个要运行代码!

    java线程池线程实验报告.doc

    java线程池线程实验报告

    java线程池封装j

    java线程池封装j

    java多线程查询数据库

    java多线程并发查询数据库,使用线程池控制分页,并发查询。

    Java 线程池.pptx

    讲述了java线程池的优点,参数,6种线程池的使用场景,线程池用到的handler,线程任务的提交方式等等。

    Java 利用多线程实现文件的分片下载

    刚学完多线程和线程池,以及线程爱好者。 使用场景及目标: 大文件的快速下载,经测试在100M带宽的网络下,下载一个40M的文件,不超过两秒钟,当然还得根据自己电脑的配置来讲。 其他说明: 文件如果特别小,而...

    史上最强多线程面试44题和答案:线程锁+线程池+线程同步等

    史上最强多线程面试44题和答案:线程锁+线程池+线程同步等

    C#判断线程池中所有的线程是否已经完成

    C#判断线程池中所有的线程是否已经完成.doc

    java多线程编程总结

    Java线程:新特征-线程池 Java线程:新特征-有返回值的线程 Java线程:新特征-锁(上) Java线程:新特征-锁(下) Java线程:新特征-信号量 Java线程:新特征-阻塞队列 Java线程:新特征-阻塞栈 Java线程:新特征-...

Global site tag (gtag.js) - Google Analytics