如何从Java中的线程类计算运行线程?

时间:2015-09-26 10:30:19

标签: java multithreading

我在Java中实现了这个线程类。

它的实例在同一个表的mysql数据库中做了一些事情。 当所有线程都完成后,我想调用另一个方法来读取表。 这意味着,最后一个运行的线程实例必须调用" read-method"。因此,每个线程都需要知道,有多少兄弟姐妹"当它结束时仍然在运行。

这让我想到了我的问题: 是否有适当的解决方案或Thread-method来计算来自同一父类的所有正在运行的线程实例?

我希望我不会忽视一个简单的解决方案。

1 个答案:

答案 0 :(得分:1)

Thread班级中创建此变量:

private static int counterAlive = 0;

每次你创建一个新的时候都会计算它,当它没有计算它时。

另外添加:

public static int getAliveThreads(){
    return this.counterAlive;
}

public void run(){
   counterAlive++;
.
.
.
.

   counterAlive--;
}