文章
我发布的所有文章。
Arthas
记录Arthas的启动、重新连接和常见启动问题处理,并结合实际场景演示类查找、反编译、编译及热更新。文章还介绍动态调整日志级别、查看和修改JVM参数的方法,以及redefine使用中的注意事项。
Java中的锁(三)结合Condition实现等待通知
介绍Lock与Condition结合实现线程等待和通知的方法,对照wait/notify说明await、signal和signalAll的作用。文章通过ReentrantLock示例展示线程协作过程,并说明等待、通知前获取锁及使用后释放锁的要求。
Java中的锁(二)实现自定义锁
介绍锁的内存语义,以及结合AQS同步器和Lock接口实现自定义同步组件的思路,并给出允许两个线程同时访问的示例。文章还对比轮询等待与wait/notify机制,说明线程通知、重新竞争锁和条件检查的注意事项。
JAVA 中的锁(一)锁分类
围绕对象头中的Mark Word,介绍偏向锁、轻量级锁和重量级锁的获取、竞争、释放与升级过程。文章通过JOL观察同步代码执行前后的锁标记,并讨论自旋、线程阻塞及不同锁状态的使用场景。