
jvm与jdk
川渝小帮手
后端架构师,springcloud 微服务,公众号-川渝小帮手
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
jvm了解(一) OOP-Klass模型与锁优化
1 【理解HotSpot虚拟机】对象在jvm中的表示:OOP-Klass模型 个人理解:jvm会创建一个 c++语言里的对象,然后引用 一个OOP对象包含以下几个部分: instanceOopDesc,也叫对象头 Mark Word,主要存储对象运行时记录信息,如hashcode, GC分代年龄,锁状态标志,线程ID,时间戳等 元数据指针,即指向方法区的instanceKlass实...原创 2018-10-16 17:14:36 · 437 阅读 · 0 评论 -
公平锁与非公平锁
在Java并发编程中,公平锁与非公平锁是很常见的概念,ReentrantLock、ReadWriteLock默认都是非公平模式,非公平锁的效率为何高于公平锁呢?究竟公平与非公平有何区别呢? 首先先简单从名字上来理解,公平锁就是保障了多线程下各线程获取锁的顺序,先到的线程优先获取锁,而非公平锁则无法提供这个保障。看到网上很多说法说非公平锁获取锁时各线程的的概率是随机的,这也是一种很不确切的说法。非...原创 2018-10-17 09:18:38 · 7122 阅读 · 1 评论 -
java中对象区域
cpu内存: java多线程,内存模型 通过多线程机制使得多个任务同时执行处理,所有的线程共享JVM内存区域main memory,而每个线程又单独的有自己的工作内存,当线程与内存区域进行交互时,数据从主存拷贝到工作内存,进而交由线程处理(操作码+操作数) 1 使用句柄访问方式,Java 堆中将会划分出一块内存来作为句柄池,reference 中存储的就是对象的句柄地...原创 2018-10-17 11:12:06 · 343 阅读 · 0 评论 -
java线程池
常见的创建线程池方式有以下几种: Executors.newCachedThreadPool():无限线程池。 Executors.newFixedThreadPool(nThreads):创建固定大小的线程池。 Executors.newSingleThreadExecutor():创建单个线程的线程池。 其实看这三种方式创建的源码就会发现: publi...原创 2018-10-17 15:36:45 · 186 阅读 · 0 评论 -
工作问题
1 出现bug时,查看调用的接口名称, 接口参数 生成的sql 报错信息 在代码的第几行,浮现错误日志 要求开发人员,对自己开发的模块,业务逻辑相当熟练,遇到问题,快速定位,理解取数逻辑 2 任务没有追踪到底, 多人协同的时候,缺少一个人总体负责,当问题卡在一个地方的时候,往往停滞不前,每一个任务要实现闭环,正反馈,项目组长 列好项目验收标准,安排测试同学测...原创 2018-11-11 23:21:51 · 152 阅读 · 0 评论