

其实这个问题比较简单,今天这篇文章的主要目的是让大家看一下分析这个问题的逻辑,并且如何更好地从一手资料里寻找这些问题的答案。上图是《深入理解 Java 虚拟机》一书中的截图。其实,说 JVM 是基于栈的虚拟机,指的是 JVM 所支持的指令集架构 ISA是基于栈的,即字节码是基于栈的指令集架构。有了指令集架构这层抽象,我.....
就以JDK1.8为例分析吧。1. runWorker(Worker w)工作线程启动后,就进入runWorker(Worker w)方法。里面是一个while循环,循环判断任务是否为空,若不为空,执行任务;若取不到任务,或发生异常,退出循环,执行processWorkerExit(w, completedAbruptl.....
随着业务的发展,系统会越来越庞大,原本简单稳定的功能,可能在不断迭代后复杂度上升,潜在的风险也随之暴露,导致最终服务不稳定,造成业务价值的损失。而为了减少这种情况,其中一种比较好的方式就是提高代码质量,比如通过代码审查,从而降低错误风险,但是,代码审查难度大,代码缺陷、漏洞不易发现,且审查工作随着代码量增加而增加,审查.....
从 Mysql 数据库角度来说,谈到存储就一定离不开字符集,只不过在我们日常开发中统一的 utf8/utf8mb4 编码,使我们常常忽略了字符集的影响,本文仅从字符集的角度来谈谈对 InnoDB 的存储设计的一点影响,以及 Mysql 是怎么兼容各种字符集的。过一下字符集Unicode 作为现在通用的字符集,通常采用两.....
锁分类从对数据操作的粒度来分:表锁:操作时会锁定整个表行锁:操作时会锁定当前操作行从对数据操作的类型分:读锁(共享锁):针对同一个份数据,多个读操作可以同时进行而不会互相影响写锁(排它锁):当前操作没有完成之前,它会阻断其他写锁和读锁Mysql锁mysql锁的特性大致归纳:表级锁 偏向MyISAM存储引擎.....