创建超过10个额外的线程是不可取的吗?示例:
for(int i=0; i<100; i++) {
new Thread() {
public void run() {
// something
}
}.start();
}这将创建并启动100个线程。这可不好,对吧?
UPDATE >每个线程都在下载内容并将其放入包中
发布于 2012-08-06 21:40:03
创建比所需线程多的线程是不可取的。
当然,如果你需要100个线程,那么这是一个很好的数字。
不知道你从哪里弄到it is undesirable to create more than 10 additional threads的。Java进程可以处理10,000个线程。
发布于 2012-08-06 21:39:45
如果你使用一个包含10个线程的线程池,并将正确的Runnable传递给它们,这将会更容易和更快。
发布于 2012-08-06 21:39:14
完全取决于上下文。如果你正在做的大多数工作都是cpu受限的,那么可能不会有太大的不同,或者实际上会让事情变得更糟(上下文切换等),除非你实际上有100个内核。如果在I/O任务上花费了大量时间,那么线程可能是有益的。你真的需要做一些基准测试。
https://stackoverflow.com/questions/11829396
复制相似问题