gpt4 book ai didi

Java多线程控制

转载 作者:行者123 更新时间:2023-12-02 20:11:59 25 4
gpt4 key购买 nike

我正在使用此代码来创建线程。

      while ((strLine = br.readLine()) != null) {
r = new runnable(strLine);
new Thread(r).start();
x++;
Thread.sleep(100);
}

如何控制任意时间点运行的最大线程数?此代码存在内存使用不断上升(内存泄漏)的问题,有更好的方法吗?我尝试使用调度程序但没有帮助。

最佳答案

您可以使用ExecutorService创建受限线程池。

ExecutorService executor = Executors.newFixedThreadPool(10);

将创建一个包含 10 个可用线程的池。然后您可以调用

executor.submit(new Runnable() { ... })

对于每个工作单元。

编辑:我应该注意,此功能仅在 Java 1.5 及更高版本中可用。

关于Java多线程控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6079713/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com