当前位置:  开发笔记 > 编程语言 > 正文

有没有办法搜索和访问当前正在运行的线程?

如何解决《有没有办法搜索和访问当前正在运行的线程?》经验,为你挑选了2个好方法。

使用Java 6:

我有一个方法,使用线程在后台运行任务.此任务访问文件,因此该方法不应该有多个线程在运行.

我试图弄清楚是否有一种方法可以在我的方法开头搜索活动的线程.我想知道是否有一个活动的线程已经在运行我的任务,以便我可以正确处理这种情况.

如果没有先前Thread的实际实例,这是否可行?我想避免全局保存线程的实例.



1> Brian Agnew..:

您可能需要更强大的功能,例如使用ReentrantLock来阻止对这些资源的并发访问.



2> David Z..:

仅供参考:您可以获取当前线程组及其子组中的所有活动线程(对于独立程序,这通常可以为您提供所有线程)java.lang.Thread.enumerate(Thread[]).但这不是解决问题的方法 - 正如Brian所说,使用锁.

推荐阅读
凹凸曼00威威_694
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有