面试官: 说一下线程间的通信
前言
目前正在出一个Java多线程专题长期系列教程,从入门到进阶含源码解读, 篇幅会较多, 喜欢的话,给个关注❤️ ~
合理的使用多线程能够更好的利用服务器资源,一般来讲,每个线程内部都有自己的上下文,它们之间互不干扰。但是我们有时候需要多个线程之间互相协作,就需要我们掌握线程的通信方式。
锁
首先我们先了解一下锁的概念,之前我们也遇到过,但是没有细讲,今天就把概念理清楚了。在Java多线程中,一把锁在同一时刻只能被一个线程获取,其它线程想要获取它,必须等待该线程释放锁,这时候就牵扯到同步的概念了。因为锁的机制,我们可以使线程可以同步执行,下面以打印数字为例,看下区别
-
无锁下
t2
t1
其它方式
其实我们之前讲的join(),sleep()...这些其实也是这一部分内容,总的来说,它们之间互相协作,具体用法可以看前面的文章,这里就不一一介绍了
结束语
下一节,带大家学习一下Java的内存模型,其实这也是多线程的一部分,一切都是为了铺垫, 等讲到高级概念的时候,听起来就不会那么难了 ~

往期内容推荐
-
-
-
-
-
-
-
我的博客(阅读体验较佳)
-
-
-
-
-
项目源码(源码已更新 欢迎star⭐️)
-
java-thread-all
-
地址: https://github.com/qiuChengleiy/java-thread-all.git
推荐 SpringBoot & SpringCloud (源码已更新 欢迎star⭐️)
-
springboot-all
-
地址: https://github.com/qiuChengleiy/springboot-all.git -
-
本篇文章来源于微信公众号: 程序员皮卡秋
微信扫描下方的二维码阅读本文

Comments NOTHING