0
点赞
收藏
分享

微信扫一扫

DOSBox和MASM汇编开发环境搭建

炽凤亮尧 2023-10-17 阅读 10
java

并发编程模型的两个关键问题

线程之间如何通信及线程之间如何同步

线程之间如何通信线程之间如何同步
通信是指线程之间以何种机制来 交换信息同步是指程序中用于 控制不同线程间操作发生相对顺序 的机制
通信方案:1、共享内存 2、消息传递
共享内存的并发模型里,线程之间共享程序的公共状态,通过写-读内存中的公共状态进行隐式通信。在共享内存并发模型里,同步是显式进行的。程序员必须显式指定某个方法或某段代码需要在线程之间互斥执行
消息传递的并发模型里,线程之间没有公共状态,线程之间必须通过发送消息来显式进行通信。在消息传递的并发模型里,由于消息的发送必须在消息的接收之前,因此同步是隐式进行的。
Java的并发采用的是共享内存模型
线程间共享内容线程间不会共享的内容
在Java中,所有实例域静态域数组元素都存储在堆内存中,堆内存在线程之间共享。局部变量(Local Variables),方法定义参数(Java语言规范称之为Formal Method Parameters)和异常处理器参数(Exception Handler Parameters)不会在线程之间共享,它们不会有内存可见性问题,也不受内存模型的影响。

-----------------------------------------------------------------------------书名:Java高并发编程详解:多线程与架构设计 作者:汪文君
-----------------------------------------------------------------------------摘自 书名:Java并发编程的艺术 作者:方腾飞;魏鹏;程晓明
-----------------------------------------------------------------------------读书笔记摘自 书名:深入理解Java虚拟机:JVM高级特性与最佳实践(第3版)作者:周志明

举报

相关推荐

0 条评论