gpt4 book ai didi

java - WorkManager 和高工作负载

转载 作者:行者123 更新时间:2023-11-30 11:58:06 26 4
gpt4 key购买 nike

我正在开发一个与网络上数百台设备交互的应用程序。提交的工作类型需要大量并发线程(主要是因为它们中的每一个都需要网络交互并且是单独进行的,但也有其他原因)。目前,我们所处的领域要求每个与之交互的设备大约有 20-30 个线程。

一个简单的计算表明这是数千个线程,甚至高达 10,000 个线程。如果我们撇开线程切换等的 CPU 损失不谈,运行在 CentOS 64 位上的 Java 5 可以处理多少线程?这只是 RAM 的问题还是我们还应该考虑其他什么?

谢谢!

最佳答案

在这种情况下,始终建议使用线程池。

线程池解决了两个不同的问题:由于减少了每个任务的调用开销,它们通常在执行大量异步任务时提供改进的性能,并且它们提供了一种限制和管理执行时消耗的资源(包括线程)的方法任务的集合。每个 ThreadPoolExecutor 还维护一些基本统计信息,例如已完成任务的数量。

ThreadPoolExecutor 是您应该使用的类。

http://www.javamex.com/tutorials/threads/ThreadPoolExecutor.shtml

关于java - WorkManager 和高工作负载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3381420/

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