并发艺术
范大
某科研究生在读,立志做一条不用翻身就能散发魅力的咸鱼
展开
-
多线程并发艺术(二)volatitle修饰符之缓存一致性协议
缓存一致性协议 在讨论volatitle修饰符之前,我们需要先去了解缓存一致性协议。 我认为在学习一门知识的时候,你需要清晰的知道,你学习的是什么,它是用于干什么的,以及怎样运用它。对于网上的博客中的内容更不应该无理由的相信。 比如本章学习的是volatitle修饰符,那即将了解的是缓存一致性协议。在了解缓存一致性协议之前,你应该想,volatitle是运用于java的一种实现JMM可见性有序性...原创 2019-04-20 18:05:14 · 356 阅读 · 0 评论 -
多线程并发艺术(三)volatitle
volatile 在构建这个章节之前,我们做了太多铺垫。先讲述了JMM,又讲述了CPU的缓存一致性协议。这些都只是为了你更好的理解volatitle。同时,这也是我自己在网上学习了之后,自己整理出来的一套流程。相信大部分其他博主也都是如此。 在前面我说过,volatitle只能保证JMM中的可见性和有序性。对于原子性是无法保证的,不过synchronized 是可以保证原子性的。对于synchr...原创 2019-04-20 22:41:34 · 365 阅读 · 1 评论 -
多线程并发艺术(一)原子性、可见性和有序性
原子性,可见性和有序性 一、原子性 Atomicity 原子性: 在化学上,原子就是构成一般物质最小的单位,在化学中是不可分割的。在java中,原子性就是操作不可中断的。即使是多个线程一起执行的时候,一个操作一旦开始,就不会被其他线程干扰。 原子性是操作原子性,根本上来说只是某个变量的某个操作赋予原子性 《thinking in Java》的第21章的《并发》有写: “除了long和doub...原创 2019-04-19 19:55:23 · 280 阅读 · 0 评论