哪里可以建网站,做网站要实名认证吗,百度seo和sem的区别,wordpress头条主题Question, what does 1 MB stack size states in JVM as I have no idea what size a stack frame of?1 MB默认线程堆栈大小意味着每个线程默认具有1MB(1048576字节)的堆栈空间.例外情况是,如果您的代码使用其中一个Thread构造函数创建一个线程,您可以在其中提供堆栈大小参数.…Question, what does 1 MB stack size states in JVM as I have no idea what size a stack frame of?1 MB默认线程堆栈大小意味着每个线程默认具有1MB(1048576字节)的堆栈空间.例外情况是,如果您的代码使用其中一个Thread构造函数创建一个线程,您可以在其中提供堆栈大小参数.堆栈帧的大小取决于被调用的方法.它需要保存方法的参数和局部变量,因此帧大小取决于它们的大小.每个帧还需要(我认为)两个额外的单词来保存已保存的帧指针和保存的返回地址.请注意,在递归算法中,您可以为一个“递归级别”拥有多个堆栈帧.对于writeObject(在Java 8中),使用的算法是递归的,并且每个级别的数据结构通常有4个帧被序列化writeObject0writeOrdinaryObjectwriteSerialDatadefaultWriteFieldswriteObject0etcetera由于编译器的差异以及ObjectInputStream / ObjectOutputStream的实现的变化,实际的帧大小将取决于平台.您最好尝试(粗略地)测量所需的堆栈空间,而不是尝试从第一原则预测帧大小.One more question, does every thread has 3000k stack size if I put a JVM option of -Xss3000k ?是的……除了我上面描述的例外.解决您的困境的一个可能的解决方案是创建一个特殊的线程,其中包含一个用于序列化的巨大堆栈.反序列化将需要具有大堆栈的类似线程.对于其余的线程,默认的堆栈大小应该没问题.其他可能的方案实现writeReplace和readResolve方法,将epc对象的父结构展平为一个数组,这样就不会得到深度递归. (显然,需要非递归地完成展平/不展平.)在调用writeObject等之前,请执行相同的展平操作.使用不同的序列化机制,或者可能是自定义机制.