上一页 1 ··· 4 5 6 7 8
摘要: 虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验、转换解析和初始化。最终形成可以被虚拟机直接使用的java类型。 加载: 类从被加载到虚拟机内存开始,到卸载出内存为止。整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载7个阶段。其中验证、准备、解析3各部分统称为连接 加载、 阅读全文
posted @ 2020-03-04 18:24 gsluofu 阅读(125) 评论(0) 推荐(0)
摘要: 一. 机器数和真值 在学习原码, 反码和补码之前, 需要先了解机器数和真值的概念. 1、机器数 一个数在计算机中的二进制表示形式, 叫做这个数的机器数。机器数是带符号的,在计算机用一个数的最高位存放符号, 正数为0, 负数为1. 比如,十进制中的数 +3 ,计算机字长为8位,转换成二进制就是0000 阅读全文
posted @ 2020-03-04 07:42 gsluofu 阅读(829) 评论(0) 推荐(0)
摘要: 垃圾收集器在对堆进行回收前,第一件事是要确定这些对象中那些还活着 1、引用计数法:给对象中添加一个引用计数器,每当有一个地方引用它时,计数器就加1;当引用失效时计数器就减1;任何时刻计数器为零的对象是不可能再被使用的。但存在对象互相引用的情况 objA.instance = objB 和 objB. 阅读全文
posted @ 2020-03-01 23:41 gsluofu 阅读(132) 评论(0) 推荐(0)
摘要: Mysql常见瓶颈 查询语句写的烂、索引失效、关联查询太多join、服务器调优及各个参数设定(缓冲线程数等) explain用法和结果的含义 explain select t.id,t.loan_order_no,t.loan_amt,t.success_time as loan_success_t 阅读全文
posted @ 2020-02-29 08:30 gsluofu 阅读(446) 评论(0) 推荐(0)
摘要: 常用工具及命令 jps jstat Top jstack jmap mat工具 top -Hp pid可以查看某个进程的线程信息 -H 显示线程信息,-p指定pid jps:可以列出正在运行的虚拟机进程,并显示虚拟机执行主类名称及进程pid 如:jps -l pid Jstack命令 jstack是 阅读全文
posted @ 2020-02-28 23:50 gsluofu 阅读(420) 评论(0) 推荐(0)
摘要: 运行时数据区域: java 虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些数据区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和结束而简历和销毁。根据javaSE7 的规定 java虚拟机所管理的内存将会包 阅读全文
posted @ 2020-02-28 23:02 gsluofu 阅读(310) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2020-02-27 15:29 gsluofu 阅读(5) 评论(0) 推荐(0)
摘要: 线程状态: 1. 新建状态(New):新创建了一个线程对象。 2. 就绪状态(Runnable):线程对象创建后,其他线程调用了该对象的start()方法。该状态的线程位于可运行线程池中,变得可运行,等待获取CPU的使用权。 3. 运行状态(Running):就绪状态的线程获取了CPU,执行程序代码 阅读全文
posted @ 2020-02-27 14:22 gsluofu 阅读(107) 评论(0) 推荐(0)
摘要: 一 单例模式: 解决的问题:就是可以保证一个类在内存中的对象唯一性。 public class SingleInstance { private static volatile SingleInstance singleInstance = null; private SingleInstance( 阅读全文
posted @ 2020-02-26 14:57 gsluofu 阅读(169) 评论(0) 推荐(0)
摘要: volatile: 可见性:一个线程对共享变量的修改,能够及时的被其他线程看到 所有的变量都储存在主内存中,每个线程独有自己独立的工作内存(cpu高速缓存部分),线程间不可直接通信,通过主内存进行间接通信,工作内存和主线程间通过bus总线进行通信。volatile底层实现主要是通过汇编lock前缀指 阅读全文
posted @ 2020-02-24 07:11 gsluofu 阅读(175) 评论(0) 推荐(0)
上一页 1 ··· 4 5 6 7 8