黄小斜

微信公众号【黄小斜】 大厂程序员,互联网职场新知,终身学习践行者,懂技术,懂职场,更想懂你。...

Java并发技术学习总结

Java并发 这篇总结主要是基于我Java并发技术系列的文章而形成的的。主要是把重要的知识点用自己的话说了一遍,可能会有一些错误,还望见谅和指点。谢谢 更多详细内容可以查看我的专栏文章:Java并发技术指南 https://blog.csdn.net/column/details/2...

2018-06-28 14:40:06

阅读数 4894

评论数 1

Java基础16:Java多线程基础最全总结

本文介绍了Java多线程的基本概念,使用方法,以及底层实现原理。帮助你更好地使用Java的多线程。 具体代码在我的GitHub中可以找到 https://github.com/h2pl/MyTech 喜欢的话麻烦点一下星哈谢谢。 文章首发于我的个人博客: https://h...

2018-05-04 16:35:48

阅读数 3361

评论数 1

Java并发编程指南15:Fork/join并发框架与工作窃取算法剖析

原创文章,转载请注明:转载自并发编程网 – ifeve.com 1. 什么是Fork/Join框架 Fork/Join框架是Java7提供了的一个用于并行执行任务的框架, 是一个把大任务分割成若干个小任务,最终汇总每个小任务结果后得到大任务结果的框架。 我们再通过Fork和Join这两个单词...

2017-05-22 12:01:22

阅读数 5119

评论数 0

Java并发指南16:JUC中常用的Unsafe和Locksupport

说一说Java的Unsafe类 最近在看Java并发包的源码,发现了神奇的Unsafe类,仔细研究了一下,在这里跟大家分享一下。 Unsafe类是在sun.misc包下,不属于Java标准。但是很多Java的基础类库,包括一些被广泛使用的高性能开发库都是基于Unsafe类开发的,比如Net...

2017-04-21 13:27:33

阅读数 4286

评论数 0

Java并发指南11:解读 Java 阻塞队列 BlockingQueue

解读 Java 并发队列 BlockingQueue 转自:https://javadoop.com/post/java-concurrent-queue 最近得空,想写篇文章好好说说 java 线程池问题,我相信很多人都一知半解的,包括我自己在仔仔细细看源码之前,也有许多的不解,甚至有些地方...

2017-04-11 14:56:56

阅读数 6007

评论数 0

Java并发指南7:JUC的核心类AQS详解

这位大侠,这是我的公众号:程序员江湖。 分享程序员面试与技术的那些事。 干货满满,关注就送。    一行一行源码分析清楚AbstractQueuedSynchronizer   转自https://www.javadoop.com/post/AbstractQueuedSynchroniz...

2017-04-10 22:29:30

阅读数 1323

评论数 0

Java并发指南9:AQS共享模式与并发工具类的实现

一行一行源码分析清楚 AbstractQueuedSynchronizer (三) 转自:https://javadoop.com/post/AbstractQueuedSynchronizer-3 这篇文章是 AQS 系列的最后一篇,第一篇,我们通过 ReentrantLock 公平锁分析了...

2017-04-10 21:53:54

阅读数 5044

评论数 0

Java并发指南12:深度解读 java 线程池设计思想及源码实现

深度解读 java 线程池设计思想及源码实现转自https://javadoop.com/2017/09/05/java-thread-pool/hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=tou...

2017-04-07 13:38:10

阅读数 4866

评论数 0

Java并发指南13:Java7/8 中的 HashMap 和 ConcurrentHashMap 全解析

本文首发于微信公众号【程序员江湖】 作者黄小斜,斜杠青年,某985硕士,阿里 Java 研发工程师,于2018 年秋招拿到 BAT 头条、网易、滴滴等 8 个大厂 offer 个人擅长领域 :自学编程、技术校园招聘、软件工程考研(关注公众号后回复”资料“即可领取 3T 免费技术学习资源) ...

2017-03-31 22:14:17

阅读数 6236

评论数 2

Java并发指南14:Java并发容器ConcurrentSkipListMap与CopyOnWriteArrayList

微信公众号【程序员江湖】 作者黄小斜,斜杠青年,某985硕士,阿里 Java 研发工程师,于2018 年秋招拿到 BAT 头条、网易、滴滴等 8 个大厂 offer 个人擅长领域 :自学编程、技术校园招聘、软件工程考研(关注公众号后回复”资料“即可领取 3T 免费技术学习资源) 原文出...

2017-03-31 14:46:49

阅读数 5388

评论数 4

Java并发编程艺术----读书笔记(一)

并发编程的挑战 1上下文切换。 cpu通过时间片分配算法来执行任务,从一个任务切换到另一个任务时会保留上个任务的状态。 多线程切换上下文开销大,不一定比单线程快。 减少上下文切换的方法 1无锁并发,不同线程处理不同数据段 2CAS算法,java的原子编程使用此算法,不需要加锁。 3最少...

2017-03-19 11:19:20

阅读数 666

评论数 1

Java并发指南6:Java内存模型JMM总结

在前面的文章中我们介绍了Java并发基础和线程安全的概念,以及JMM内存模型的介绍,包括其定义的各种规则。同时我们也介绍了volatile在JMM中的实现原理,以及Lock锁和synchronized实现同步方式的区别。最后还讲述了final关键字在JSR-133中的语义加强。 介绍了这么多内容...

2017-03-16 11:21:13

阅读数 3534

评论数 0

Java并发指南8:AQS中的公平锁与非公平锁,Condtion

一行一行源码分析清楚 AbstractQueuedSynchronizer (二) 转自https://www.javadoop.com/post/AbstractQueuedSynchronizer-2 文章比较长,信息量比较大,建议在 pc 上阅读。文章标题是为了呼应前文,其实可以单独成文...

2017-03-09 10:42:33

阅读数 4416

评论数 0

Java并发指南2:深入理解Java内存模型JMM

一:JMM基础与happens-before 并发编程模型的分类 在并发编程中,我们需要处理两个关键问题:线程之间如何通信及线程之间如何同步(这里的线程是指并发执行的活动实体)。通信是指线程之间以何种机制来交换信息。在命令式编程中,线程之间的通信机制有两种:共享内存和消息传递。 在共享内...

2017-03-09 09:49:20

阅读数 4439

评论数 0

Java并发指南5:JMM中的final关键字解析

与前面介绍的锁和volatile相比较,对final域的读和写更像是普通的变量访问。对于final域,编译器和处理器要遵守两个重排序规则: 在构造函数内对一个final域的写入,与随后把这个被构造对象的引用赋值给一个引用变量,这两个操作之间不能重排序。 初次读一个包含final域的对象的引用,...

2017-03-08 20:15:47

阅读数 4167

评论数 0

Java并发指南4:Java中的锁 Lock和synchronized

Java中的锁机制及Lock类 锁的释放-获取建立的happens before 关系 锁是java并发编程中最重要的同步机制。锁除了让临界区互斥执行外,还可以让释放锁的线程向获取同一个锁的线程发送消息。 下面是锁释放-获取的示例代码: class MonitorExample { ...

2017-03-08 19:21:16

阅读数 6148

评论数 1

Java并发指南10:Java 读写锁 ReentrantReadWriteLock 源码分析

Java 读写锁 ReentrantReadWriteLock 源码分析 转自:https://www.javadoop.com/post/reentrant-read-write-lock#toc5 本文内容:读写锁 ReentrantReadWriteLock 的源码分析,基于 Java7...

2017-03-08 19:08:34

阅读数 3458

评论数 0

Java并发指南7:JUC的核心类AQS详解

一行一行源码分析清楚AbstractQueuedSynchronizer 转自https://www.javadoop.com/post/AbstractQueuedSynchronizer#toc4 在分析 Java 并发包 java.util.concurrent 源码的时候,少不...

2017-03-08 19:00:06

阅读数 3941

评论数 2

Java并发指南3:并发三大问题与volatile关键字,CAS操作

序言 先来看如下这个简单的Java类,该类中并没有使用任何的同步。 01 finalclassSetCheck { 02 privateinta =0; 03 privatelongb =0; 04 05 voidset() { 06 ...

2017-03-08 14:06:54

阅读数 6712

评论数 0

Java并发指南开篇:Java并发编程学习大纲

  Java并发指南系列文章在我的专栏:Java并发指南 Java并发编程一直是Java程序员必须懂但又是很难懂的技术内容。 这里不仅仅是指使用简单的多线程编程,或者使用juc的某个类。当然这些都是并发编程的基本知识,除了使用这些工具以外,Java并发编程中涉及到的技术原理十分丰富。为了...

2017-03-08 09:46:49

阅读数 5550

评论数 6

提示
确定要删除当前文章?