java -xss_Java线程与Xss

本文探讨了Java线程中的Xss参数如何影响线程大小、内存消耗及递归深度,指出Xss大小与栈溢出错误的关系。同时,解释了Java线程数的决定因素,包括JVM内存、线程栈大小和系统限制,并提供了估算最大线程数的公式。通过示例展示了创建大量线程时的时间消耗。
摘要由CSDN通过智能技术生成

jvm系列

Xss与线程个数

Xss越大,每个线程的大小就越大,占用的内存越多,能容纳的线程就越少;Xss越小,则递归的深度越小,容易出现栈溢出 java.lang.StackOverflowError。减少局部变量的声明,可以节省栈帧大小,增加调用深度。

/**

* -Xss128K deep of calling = 675

* -Xss256K deep of calling = 1686

*

* Xss越大,每个线程的大小就越大,占用的内存越多,能容纳的线程就越少

* Xss越小,则递归的深度越小,容易出现栈溢出 java.lang.StackOverflowError

* 减少局部变量的声明,可以节省栈帧大小,增加调用深度

*/

public class XssDemo {

private static int count=0;

public static void recursion(){

//减少局部变量的声明,可以节省栈帧大小,增加调用深度

long a=1,b=2,c=3,d=4,e=5,f=6,q=7,x=8,y=9,z=10;

count++;

recursion();

}

public static void main(String args[]){

try{

recursion();</

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值