gpt4 book ai didi

java - Java 守护线程是否与生成进程共享堆或 Perm Gen?

转载 作者:行者123 更新时间:2023-11-29 09:49:26 28 4
gpt4 key购买 nike

如果我从我的程序(一个非守护进程)创建一个守护线程,堆和永久代内存空间是与新线程共享还是重新分配?

如果守护线程有自己的空间,在创建新线程时是否考虑了 JVM 内存调整参数,如最大堆大小等?

最佳答案

are the heap and perm gen memory spaces shared with the new thread or is it allocated anew?

所有线程(守护进程状态无关紧要)共享堆和永久内存空间。每个线程都有自己的堆栈空间,用于存储方法字段和调用堆栈。您可以通过 changing JVM arguments 调整分配的每线程堆栈空间的大小。 .但即使是这些堆栈区域也是一般 JVM 堆空间的一部分。

当线程在单独的 CPU 中运行时,它也有一个内存缓存。 per-CPU 内存缓存用于性能原因,因此可以出于速度原因对本地 CPU 内存进行更新,而不必在每次访问时将信息同步到中央存储。但是这些缓存仍然读取和写入通用 JVM 内存空间。

有关守护线程真正含义的更多信息,请参阅 @Peter's answer .

关于java - Java 守护线程是否与生成进程共享堆或 Perm Gen?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12389661/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com