HollisChuang's Blog"> 并发编程-HollisChuang's Blog
天道不一定酬所有勤
但是,天道只酬勤

并发编程

再有人问你volatile是什么,把这篇文章也发给他。

hollischuang阅读(910)评论(3)

在上一篇文章中,我们围绕volatile关键字做了很多阐述,主要介绍了volatile的用法、原理以及特性。在上一篇文章中,我提到过:volatile只能保证可见性和有序性,无法保证原子性。关于这部分内容,有读者阅读之后表示还是不是很理解, […]

内存模型是怎么解决缓存一致性问题的?

hollischuang阅读(589)评论(0)

在再有人问你Java内存模型是什么,就把这篇文章发给他这篇文章中,我们介绍过关于Java内存模型的来龙去脉。 我们在文章中提到过,由于CPU和主存的处理速度上存在一定差别,为了匹配这种差距,提升计算机能力,人们在CPU和主存之间增加了多层高 […]

再有人问你synchronized是什么,就把这篇文章发给他。

Heng阅读(794)评论(0)

在再有人问你Java内存模型是什么,就把这篇文章发给他。中我们曾经介绍过,Java语言为了解决并发编程中存在的原子性、可见性和有序性问题,提供了一系列和并发处理相关的关键字,比如synchronized、volatile、final、con […]

Java的并发编程中的多线程问题到底是怎么回事儿?

hollischuang阅读(1101)评论(0)

在我之前的一篇《再有人问你Java内存模型是什么,就把这篇文章发给他。》文章中,介绍了Java内存模型,通过这篇文章,大家应该都知道了Java内存模型的概念以及作用,这篇文章中谈到,在Java并发编程中,通常会遇到三个问题,即原子性问题、一 […]

深入理解多线程(五)—— Java虚拟机的锁优化技术

hollischuang阅读(1739)评论(0)

本文是《深入理解多线程》的第五篇文章,前面几篇文章中我们从synchronized的实现原理开始,一直介绍到了Monitor的实现原理。 前情提要 通过前面几篇文章,我们已经知道: 1、同步方法通过ACC_SYNCHRONIZED关键字隐式 […]

深入理解多线程(三)—— Java的对象头

hollischuang阅读(2700)评论(0)

上一篇文章中我们从HotSpot的源码入手,介绍了Java的对象模型。这一篇文章在上一篇文章的基础上再来介绍一下Java的对象头。主要介绍一下对象头的作用,结构以及他和锁的关系。 Java对象模型回顾与勘误 在上一篇文章中,关于对象头的部分 […]

深入理解多线程(二)—— Java的对象模型

hollischuang阅读(4795)评论(6)

上一篇文章中简单介绍过synchronized关键字的方式,其中,同步代码块使用monitorenter和monitorexit两个指令实现,同步方法使用ACC_SYNCHRONIZED标记符实现。后面几篇文章会从JVM源码的角度更加深入, […]

深入理解多线程(一)——Synchronized的实现原理

hollischuang阅读(5211)评论(0)

synchronized,是Java中用于解决并发情况下数据同步访问的一个很重要的关键字。当我们想要保证一个共享资源在同一时间只会被一个线程访问到时,我们可以在代码中使用synchronized关键字对类或者对象加锁。那么,本文来介绍一下s […]

[译]Java虚拟机是如何执行线程同步的

hollischuang阅读(3184)评论(1)

想介绍下synchronized的原理,但是又不知道从何下手,在网上看到一篇老外的文章,介绍了和线程同步相关的几个基础知识点。所以想把它翻译一下给大家看看。相信看过这些基础知识之后再看我后面要写的synchronized的原理就会好理解一点 […]

HollisChuang's Blog

联系我关于我