当前位置: 首页 > 面试题库 >

Java VM可以支持多少个线程?

皇甫树
2023-03-14
问题内容

Java VM可以支持多少个线程?这会因供应商而异吗?通过操作系统?其他因素?


问题答案:

这取决于您正在使用的CPU,操作系统,其他正在执行的操作,您正在使用的Java版本以及其他因素。我已经看到Windows服务器在关闭计算机之前具有> 6500个线程。当然,大多数线程没有做任何事情。一旦计算机遇到了大约6500个线程(使用Java),整个计算机就会开始出现问题并变得不稳定。

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

当然,您必须有足够的RAM,并且必须以足够的内存来启动Java,才能完成线程正在做的所有事情,并为每个线程拥有一个堆栈。任何具有现代CPU(最近几代的AMD或Intel)和1-2 Gig内存(取决于OS)的机器都可以轻松地支持具有数千个线程的JVM 。

如果您需要一个比这个更具体的答案,那么最好的方法是剖析。



 类似资料:
  • 问题内容: 我有一个实现broadcast.emit的网站。向网站的所有用户发送消息。这只是socket.io的最简单实现,但是我目前遇到了问题。当我命中约100个并发用户时。nodejs服务器开始滞后,直到挂起,我无法再访问整个网站。当我们检查服务器时。nodejs占用了100%的CPU。正常吗 我想知道socket.io可以支持多少个用户?当发生这种情况时,有没有办法以编程方式重新启动node

  • 本文向大家介绍网址(URL)支持的最大长度是多少?最大支持多少个字符?,包括了网址(URL)支持的最大长度是多少?最大支持多少个字符?的使用技巧和注意事项,需要的朋友参考一下 今天在测试Email Ticket的时候发现在进行Mark as Read/Unread操作时,请求是通过GET方式进行的。URL中列出了所有参与该操作的Ticket Id。于是,我想起GET请求是有最大长度限制的。遂输入超

  • 并发概念太模糊,这里以两种可以量化的指标并发连接数和并发请求数来说明。 并发连接数是指服务器当前时刻一共维持了多少TCP连接,而这些连接上是否有数据通讯并不关注,例如一台消息推送服务器上可能维持了百万的设备连接,由于连接上很少有数据通讯,所以这台服务器上负载可能几乎为0,只要内存足够,还可以继续接受连接。 并发请求数一般用QPS(服务器每秒处理多少请求)来衡量,而当前时刻服务器上有多少个tcp连接

  • Libevent本身不是多线程安全的,在多核的时代,如何能充分利用CPU的能力呢,这一节来说说如何在多线程环境中使用libevent,跟源代码并没有太大的关系,纯粹是使用上的技巧。 1 错误使用示例 在多核的CPU上只使用一个线程始终是对不起CPU的处理能力啊,那好吧,那就多创建几个线程,比如下面的简单服务器场景。 1 主线程创建工作线程1; 2 接着主线程监听在端口上,等待新的连接; 3 在线程

  • 问题内容: 我对多线程是否可以在Python中工作感到有些困惑。 我知道对此有很多疑问,我已经阅读了很多,但是我仍然很困惑。我从自己的经验中知道,并且看到其他人在StackOverflow上发表了自己的答案和示例,说在Python中确实可以实现多线程。那么为什么每个人都说Python被GIL锁定并且一次只能运行一个线程呢?显然可以。还是我不来这里有什么区别? 许多张贴者/受访者还不断提到线程是有限

  • Workerman有一个依赖pthreads扩展的MT多线程版本,但是由于pthreads扩展还不够稳定,所以这个Workerman多线程版本已经不再维护。 目前Workerman及其周边产品都是基于多进程单线程的。