标签:java 并发协作

业余杂谈

go 程序常见问题

herman 4年前 (2020-04-04) 1709浏览

1.向一个已经关闭的通道发送数据会导致异常,可以通过defer 进行异常捕捉: defer func(){ if r := recover(); r != nil{ logrus.Errorln("Exceptin:", ...

JAVA

ConcurrentModificationException 并发修改异常问题解决

herman 5年前 (2019-05-13) 5586浏览

前面的那篇文章我已经预告过了,今天要写一个并发修改异常的案例。在 MySQL 中,我解释了一个全局锁,禁止修改数据的发生。但是在 java 中你可能或多或少的遇到过 ConcurrentModificationException 问题,这就是并发修...

JAVA

10W+ 面试题,happens-before 规则

herman 5年前 (2019-03-05) 1595浏览

今年的面试情况,被很多人吐槽。可能是人数和难度都有所增加。 昨天还有网友私信我,说面试被问到 happens-before 规则,我该怎么回答?这个说来话长,给他发了几个链接,并推荐他看看《2019 Java 高并发学习路线图和必会的 50...

业余杂谈

极客时间《Java并发编程实战》购买返现24

herman 5年前 (2019-02-25) 4786浏览

极客时间的课程大多数都是精品课程,今年以来,极客时间推出了不少课程,有 Java、前端、面试技巧等方面的,内容都还不错。就在今天,极客时间又推出了《Java并发编程实战》专栏,非常受欢迎! 为了回报大家,并且现在的面试中,关于并发应该是必问...

JAVA

毁三观的 Java for 循环语句优化!

herman 5年前 (2019-02-15) 3811浏览

据说,这是一道谷歌的面试题。 就是有 3 个 for 循环,有的程序员会把 3 个一样的 for 循环合成一个来写,有的把一个 for 循环,扯成 3 个来写。比如下面的这道题。 //第一种情况 for(int i=0;i<1...

JAVA

Java并发之CPU缓存一致性

herman 6年前 (2018-11-05) 2420浏览

只学习缓存框架的使用,而不了解缓存的底层实现逻辑,对于高级开发来说太没理想了!今天我们来聊聊CPU的缓存一致性! 准确的说,我们今天要聊的是CPU缓存一致性协议MESI。 为什么CPU需要高速缓存? 在摩尔定律的指导下CPU以每...

JAVA

这样使用 ThreadLocal 对吗?

herman 6年前 (2018-09-18) 5237浏览 0评论

最近我看到同事再用 ThreadLocal,他没用出想要的效果就来咨询我,然后我大概解释了一下,然后连我自己都糊涂了。所以趁机又看了一下《深入理解java虚拟机》这本书,下面说一说我个人对 ThreadLocal 的理解,解释有误的地方请留言指正...

JAVA

Threadlocal 和 ThreadLocalMap 原理解析

herman 6年前 (2018-04-29) 4672浏览 0评论

java 中提供了两个线程安全的操作方式,一个是 Threadlocal ,一个是ThreadLocalMap。本文介绍他们的区别和实现原理。 Threadlocal Threadlocal 的属性包括 threadLocalHash...

JAVA

SecureRandom 教程

herman 6年前 (2018-03-31) 5972浏览 0评论

说实话,作为一个工作了好几年的一个老程序员。我对 SecureRandom 了解的也不是很多,知道最近在读一个框架的源码时遇到了 SecureRandom 这个类。我一下子就被他吸引住了,SecureRandom 类提供加密的强随机数生...

JAVA

详解 java 生产者 消费者 多线程 经典面试题

herman 8年前 (2016-10-24) 4529浏览 0评论

最近有网友面试中遇到了,生产者 消费者问题。我在这里整理一下,分享出来。对于多线程程序来说,不管任何编程语言,生产者和消费者模型都是最经典的。 实际上,准确说应该是“生产者-消费者-仓储”模型,离开了仓储,生产者消费...