Jvm支持多少线程

走着路睡觉
  • java
大约 1 分钟

Jvm支持多少线程

根据使用的CPU、操作系统、其他进程在做什么、您使用的Java版本以及其他因素。

我看到一台Windows服务器在关闭机器之前有超过6500个线程。当然,大多数线程都没有做任何事情。一旦机器达到大约6500个线程(在Java中),整个机器就开始出现问题并变得不稳定。

我的经验表明,Java(最新版本)可以愉快地使用计算机本身可以承载的线程,而不会出现问题。

当然,您必须有足够的内存,并且您必须启动Java时有足够的内存来执行线程正在执行的所有操作,并且为每个线程都有一个堆栈。

任何具有现代CPU(最近几代AMD或Intel)和1-2 G内存(取决于操作系统)的机器都可以轻松支持具有数千个线程 的JVM。

Don't b b,show the code

public class DieLikeADog {
    private static Object s = new Object();
    private static int count = 0;
    public static void main(String[] argv){
        for(;;){
            new Thread(new Runnable(){
                    public void run(){
                        synchronized(s){
                            count += 1;
                            System.err.println("New thread #"+count);
                        }
                        for(;;){
                            try {
                                Thread.sleep(1000);
                            } catch (Exception e){
                                System.err.println(e);
                            }
                        }
                    }
                }).start();
        }
    }
}
上次编辑于:
贡献者: zhaojingbo
Loading...