为了账号安全,请及时绑定邮箱和手机立即绑定

ThreadGroup.activeCount() 方法在 java 中不起作用

ThreadGroup.activeCount() 方法在 java 中不起作用

GCT1015 2024-01-28 16:22:19
我正在学习多线程的概念,我试图查找数组中的活动线程数,但ThreadGroup.activeCount()方法仅返回零值。这是代码:线程对象类:-class th1 extends Thread{    public th1(String threadName, ThreadGroup tg1)    {        super(tg1, threadName);    }    @Override    public void run()     {        try {            Thread.sleep(5000);        }         catch (InterruptedException e)         {            e.printStackTrace();        }        System.out.println(Thread.currentThread().getName() + " is running");    }}主要课程:-public class enumerate_demo {    public static void main(String[] args)     {        ThreadGroup tg1 = new ThreadGroup("group 1");        Thread t1 = new Thread(new th1("t-1", tg1));        t1.start();        Thread t2 = new Thread(new th1("t-2", tg1));        t2.start();        Thread t3 = new Thread(new th1("t-3", tg1));        t3.start();        System.out.println("Number of active count :- " + tg1.activeCount());        Thread[] group = new Thread[tg1.activeCount()];        int count = tg1.enumerate(group);        for (int i = 0; i < count; i++)        {            System.out.println("Thread " + group[i].getName());        }    }}
查看完整描述

1 回答

?
慕斯王

TA贡献1864条经验 获得超2个赞

问题是,在创建实例th1类时,您将它们用作RunnableThread. 这些包装线程不与任何ThreadGroup. 声明变量如下。

        Thread t1 = new th1("t-1", tg1);
        t1.start();


查看完整回答
反对 回复 2024-01-28
  • 1 回答
  • 0 关注
  • 76 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信