定义单个线程的最大堆大小

时间:2018-05-04 10:35:28

标签: java heap-memory

是否可以为特定新线程定义最大堆分配(考虑低于分配给JVM的最大堆大小的限制)?

示例:将VM设置为-Xms=24m -Xmx=48m并以编程方式将最大线程堆大小设置为8m

1 个答案:

答案 0 :(得分:2)

不,你不能,因为堆是按设计在线程之间共享的。但是,如果您有stackoverflow(特定于线程),则有-Xss来更改堆栈大小。除非您正在与stackoverflow进行斗争,否则您不太可能需要更改它。

(但是,如果你真的需要这个,你可能会尝试进行托管的堆外分配,从而让你能够控制内存的使用方式,但是与对象相比,处理字节缓冲区非常不方便......)