Java虚拟机所管理的内存,包含的运行时数据区域

运行时数据区域 线程私有(随用户线程的启动和结束而建立和销毁)或所有线程共享(随虚拟机进程的启动而存在) 抛出的异常 备注
程序计数器(Program Counter Register) 线程私有 唯一不抛出OOM异常的区域
虚拟机栈(VM Stack) 线程私有 会抛出 StackOverflowError、OutOfMemoryError
本地方法栈(Native Method Stack) 线程私有 会抛出 StackOverflowError、OutOfMemoryError
堆(Heap) 所有线程共享 会抛出 OutOfMemoryError 通过 -Xmx 和 -Xms 设置堆大小
方法区(Method Area) 所有线程共享 会抛出 OutOfMemoryError
直接内存(Direct Memory) 会抛出 OutOfMemoryError

猜你喜欢

转载自www.cnblogs.com/cag2050/p/11894668.html