为什么 java 进程中的线程数与非堆内存的实际大小不同?

Why is the number of threads in a java process different from the actual size of non-heap memory?

由于我缺乏英语知识,句子可能会很奇怪 感谢所有阅读问题的人。

喂?

我在Centos7上运行一个java进程,用jconsole监控,但是当前创建的线程数在非堆内存大小上不一样

我知道一个线程默认占用1mb,但是即使创建了100个thread,非堆内存的大小也不是100mb。为什么?

Non-Heap memory,如jconsole所示,包括Metaspace、Compressed Class Space和Code Cache。换句话说,它计算加载的 类 和编译的方法使用的内存。与线程和栈无关