前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Java 并发编程 多线程的交互模式

Java 并发编程 多线程的交互模式

作者头像
爱明依
发布2019-03-12 15:03:22
5210
发布2019-03-12 15:03:22
举报
文章被收录于专栏:爱明依

多线程的开发难度远远高于单线程,在多线程开发中,我们需要处理线程间的通信,需要对线程并发做控制,需要做好线程间的协调工作。这里说的多线程指的是单进程内的多线程。 一: 互不通信的多线程模式: 如果线程之间不需要处理共享的数据,也不需要进行动作协调,那么将会非常简单,就是独立的线程各自完成各自线程中的工作。

互不通信的多线程执行流程
互不通信的多线程执行流程

二:基于共享容器协同的多线程模式 例如在生产者和消费者的例子,我们有一个队列用于生产和消费,那么这个队列就是多个线程会共享的一个容器或者是数据对象,多个线程会并发的访问这个队列,如下图

使用队列进行交互的多线程执行流程
使用队列进行交互的多线程执行流程

对于线程共享的数据,最好采用线程安全的容器或者是对象。 在这些容器里有些是支持并发的,会比简单的加互斥锁实现更好。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017年09月09日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档