雨滴.
雨滴.

Java

2 篇文章

Java线程和Go协程:同样是并发,为什么写法完全不同?

Java 里的 Thread 和 Go 里的 Goroutine,看起来都是用来做并发的东西,但真正往底层看,两者背后的运行方式完全不同。从传统 Java 平台线程、线程池,到 Go Runtime 调度 Goroutine,再到 Java 21 带来的虚拟线程,线程和并发任务之间的关系正在发生变化。本文不只比较 Thread 和 Goroutine 的概念,而是顺着“谁创建、谁调度、谁负责等待 I/O”这条线,看看 Java 和 Go 到底是怎么把大量并发任务跑起来的。

当多个线程撞进同一扇门:我终于看懂了 Synchronized

最开始,我对 Synchronized 的理解只有一句话:加把锁,多个线程排队执行。后来真正往 JVM 里面挖,才发现这个看似简单的关键字背后,竟然牵扯出了 Monitor、对象头、happens-before、CAS 和 JIT 锁优化。于是顺着这把锁一路往下看,才慢慢明白 Java 到底是怎么把并发这件麻烦事管住的。

豫ICP备2026047996号 公安备案 豫公网安备41072702000373号