本文主要是介绍syncronized+wait/notify Java实现的语言级别的超大管程+Java 多线程机制的发展,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
最先是:syncronized+wait/notify
不知道Java的syncronized的设计者是怎么思考的,将OOP的对象当做是条件变量,将syncronized 临界区 作为管程资源,真的是一个大手笔:想象整个Jvm就是一个大管程,每个Object都是一个condition
从每一个对象头的markword 都有轻量锁和重量锁的 标志位 也能看的出来
后来是Condition,Lock,ReentreLock
因为syncronized这个锁的粒度实在是太大了,而且设计的自定义自由度不够,而且不支持读写锁分离,不适合 奔腾发展的 计算机组成原理 对现代计算机的优化,所以提出了concurrent包来方便Java程序员进一步操作
这篇关于syncronized+wait/notify Java实现的语言级别的超大管程+Java 多线程机制的发展的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!