
JVM
黑旋风李鬼
这个作者很懒,什么都没留下…
展开
-
JVM数据存储结构 & Java的值传递和址传递
本文旨在用最通俗的语言讲述最枯燥的基本知识 1. 形参与实参 我们先来重温一组语法: 形参:方法被调用时需要传递进来的参数,如:func(int a)中的a,它只有在func被调用期间a才有意义,也就是会被分配内存空间,在方法func执行完成后,a就会被销毁释放空间,也就是不存在了 实参:方法被调用时是传入的实际值,它在方法被调用前就已经被初始化并且在方法被调用时传入。 举个栗子: 1...转载 2018-11-16 16:17:36 · 669 阅读 · 0 评论 -
JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof详解
来源:https://my.oschina.net/feichexia/blog/196575 现实企业级Java开发中,有时候我们会碰到下面这些问题: OutOfMemoryError,内存不足 内存泄露 线程死锁 锁争用(Lock Contention) Java进程消耗CPU过高 ...... 这些问题在日常开发中可能被很多人忽视(比如有的人遇到上面的问题只是重启服务器或者调大...转载 2018-11-19 12:00:29 · 184 阅读 · 0 评论 -
类加载器
/** * 类加载器 * 1.Bootstrap类加载器 * 2.ExtClassLoader类加载器 * 3.AppClassLoader类加载器 */ public class AaaController { public static void main(String[] args) { //jdk/bin/jre/rt.jar 中的.java类 被Boo...原创 2018-08-15 09:53:36 · 149 阅读 · 0 评论 -
java栈和堆在多线程运行时的访问
一、前言 最近在工作上用到了一个静态方法,跟同事交流的时候,被一个问题给问倒了,只怪基础不扎实... 问题大致是这样的,“在多线程环境下,静态方法中的局部变量会不会被其它线程给污染掉?”; 我当时的想法:方法中的局部变量在运行的时候,是存在JAVA栈中的,方法运行结束,局部变量也就都弹光了,理论上单线程的话是不会有问题的,我之所以不知道,是因为不清楚在JAVA内存模型中,一个线程对应一个栈,...转载 2019-05-19 18:55:42 · 398 阅读 · 0 评论 -
JVM启动流程和基本结构
JVM启动流程 JVM基本结构原创 2019-08-13 00:42:14 · 177 阅读 · 0 评论 -
别让Java对象逃逸(Object Escape)
https://www.jianshu.com/p/8f17c2c22d91转载 2019-08-13 00:43:50 · 247 阅读 · 0 评论