随笔分类 -  并发编程实战

摘要:问题引出: voliatile能保证数据的可见行与有序性,其实现基于两条原则: Lock前缀指令会引起处理器缓存会写到内存。 一个处理器的缓存回写到内存会导致其他处理器的缓存无效,其他处理器下次请求该值时从内存读取该值并做缓存。 实现方式: 在并发操作场景下,操作系统必须要有一些机制和原语,以保证某 阅读全文
posted @ 2021-04-02 16:36 机械公敌 阅读(732) 评论(0) 推荐(0)
摘要:--极客时间学习笔记 在计算机的发展历程中,CPU、内存、I/O三者之间的性能差异是其一直存在的一个核心矛盾,三者的速度由快到慢依次为:CPU > 内存 > I/O 为了解决木桶效应的短板,平衡三者之间的速度差异,计算机体系结构、操作系统、编译程序做出了如下贡献: CPU增加了缓存,以均衡与内存的速 阅读全文
posted @ 2020-11-23 09:26 机械公敌 阅读(141) 评论(0) 推荐(0)
摘要:--极客时间学习笔记 一是跳出来,看全景 二是钻进去,看本质 并发编程可以抽象成三个核心问题:分工、同步和互斥。 1.分工 在并发编程领域,你就是项目经理,线程就是项目组成员。任务分解和分工对于项目成败非常关键,不过在并发领域,分工直接决定了并发程序的性能。Java SDK并发包里的Excutor、 阅读全文
posted @ 2020-11-17 09:30 机械公敌 阅读(263) 评论(0) 推荐(0)
摘要:--极客时间学习笔记 并发编程涉及到的知识多而杂,很多时候要站在更高的维度来看待问题。例如:java中synchronized,wait()/notify()相关知识晦涩难懂,但实际上这些不过是操作系统领域里管程模型的一种实现而已。 并发编程可以总结为三个核心问题:分工、同步、互斥。所谓分工指的是如 阅读全文
posted @ 2020-11-17 08:25 机械公敌 阅读(100) 评论(0) 推荐(0)