2025年3月

回顾一下字节码

文章详解Java字节码与.class文件结构:从魔数、版本号、常量池到字段、方法、属性表,展示跨平台原理及JVM多语言支持,并演示用javap、jclasslib查看。

类的生命周期

Java类生命周期含加载、验证、准备、解析、初始化、使用、卸载七阶段;加载-连接-初始化三步中,连接再分验证、准备、解析。初始化触发6场景,类卸载需实例、引用、加载器全被GC。

什么是悲观锁、乐观锁?

悲观锁假定冲突频繁,访问共享资源前先加锁;乐观锁假定冲突极少,先操作后验证,冲突则重试。前者含互斥、自旋、读写锁,后者无锁,靠版本号或CAS检测冲突,仅适合低冲突场景。

什么是零拷贝?

零拷贝通过DMA与sendfile将磁盘数据经内核直接发到网卡,避免CPU和内存复制,减少2次上下文切换与拷贝,小文件性能翻倍;大文件因PageCache命中率低,应改用异步I/O+直接I/O。

目录