java 中Concurrent 包下面提供了java的并发编程的一些基本工具,能够使我们更高效写出线程安全的代码,也减少了自己使用不当导致线程死锁的可能。

Concurrent 包主要包括 atomic基本类型类,基于AQS各种锁的实现,线程池框架,线程安全的集合类,线程并发控制类(CountDownLatch,CyclicBarrier),future接口实现。

结构

Concurrent 包下面包含了 atomic 包和 locks 包,还有Concurrent 下面直接的类。

atomic 包

atomic 中提供了基本类型的原子操作类

locks 包

该包主要 java 中锁的实现,包括AQS,和基于AQS实现的各种锁

Concurrent 下的类

Concurrent 该包下主要包括线程池 Executor 框架 ,线程安全的集合(BlockingQueue,ConcurrentHashMap等),线程并发控制类(CountDownLatch,CyclicBarrier),future 接口实现获取线程执行结果。

总结

Concurrent 包主要包括 atomic基本类型类,基于AQS各种锁的实现,线程池框架,线程安全的集合类,线程并发控制类(CountDownLatch,CyclicBarrier),future接口实现。
这里面一些具体类的实现可以看我的并发专栏中的博客

Concurrent 包结构介绍相关推荐

  1. 1、solr包结构介绍,solrCore的安装配置,solr部署到Tomcat,多solrCore配置,配置中文分词器,界面功能介绍,Schema.xml的基本使用,数据导入

    一.下载solr,下载地址是:http://archive.apache.org/dist/lucene/solr/,选择自己想要的solr的版本,本项目使用的版本是4.10.3 二.如果想下载Luc ...

  2. Java 并发之Concurrent 包综述

    ■ 并发原理 单核系统:线程交替执行,由于交替又快又多,给人一种同时执行的感觉 多核系统:不仅可以交替执行线程,而且可以重叠执行线程 补充: 本章指的并发主要指的是线程间的并发 ■ 常见的并发机制 ■ ...

  3. java concurrent包介绍及使用

    2019独角兽企业重金招聘Python工程师标准>>> 说一说java的concurrent包1-concurrent包简介 前面一个系列的文章都在围绕hash展开,今天准备先说下c ...

  4. LoRa无线通信技术介绍(三)数据包结构

    LoRa数据帧包结构 LoRa®调制解调器采用两种类型的数据包格式:显式和隐式.显式数据包包括一个短报头,其中包含字节数.编码速率以及数据包中是否使用了CRC的信息.报文格式如下图所示. LoRa®包 ...

  5. java concurrent包的学习(转)

    java concurrent包的学习(转) http://my.oschina.net/adwangxiao/blog/110188 我们都知道,在JDK1.5之前,Java中要进行业务并发时,通常 ...

  6. 高并发编程基础(java.util.concurrent包常见类基础)

    JDK5中添加了新的java.util.concurrent包,相对同步容器而言,并发容器通过一些机制改进了并发性能.因为同步容器将所有对容器状态的访问都串行化了,这样保证了线程的安全性,所以这种方法 ...

  7. Java - concurrent包详解

    我们都知道,在JDK1.5之前,Java中要进行业务并发时,通常需要有程序员独立完成代码实现,当然也有一些开源的框架提供了这些功能,但是这些依然没有JDK自带的功能使用起来方便.而当针对高质量Java ...

  8. 【笔记】spring的注解回顾,springboot-restful项目结构介绍 springboot-freemarker ⼯程配置详解

    注解 学Spring boot有一阵子了,总结一下它的注解. @Controller :修饰class,⽤来创建处理http请求的对象 @RestController :Spring4之后加⼊的注解, ...

  9. java多线程之Concurrent包

    1.在新增的Concurrent包中,BlockingQueue很好的解决了多线程中,如何高效安全"传输"数据的问题. 2.通过这些高效并且线程安全的队列类,为我们快速搭建高质量的 ...

最新文章

  1. 国产AI芯片加速,鲲云携手浪潮推出数据流AI服务器
  2. 警惕,MyBatis的size()方法竟然有坑!
  3. Vuex 的应用场景
  4. 旋转矩阵与欧拉角之间的转换
  5. 关于Git使用的一些心得
  6. mysql三高讲解(二):2.4 InnoDB数据表是如何存储的
  7. [原创]三维建模软件的尝试
  8. Serengeti Accomodation
  9. 单结晶体管的导电特性_室温制备自愈合、可注射PEDOT:PSS导电水凝胶
  10. 中兴光猫F412超级管理员密码获取
  11. photoshop 快捷键学习笔记
  12. 消防工程师 7.2 泡沫灭火系统-选型 8.1 防排烟系统-概述
  13. 如何在HTML里画一个三角形
  14. 第八章 界面外观——Qt
  15. Git连接GitHub仓库,同步上传图片及CSDN外链图片转存失败解决方案
  16. Win7笔记本电脑启用虚拟WIFI共享上网
  17. 我们研究了853场世界杯比赛,发现了这几条稳赔不赚的竞猜攻略
  18. 粒倍营浅谈如何做好SEO
  19. 性能测试知多少?怎样开展性能测试
  20. vue手脚架配置请求头

热门文章

  1. 推荐系统中的排序学习
  2. 【mysql】变量的基本使用
  3. Property 'X' not found on type entity.Customer错误原因分析
  4. Redis 客户端使用与监控
  5. .java编译成.class 与 .class反编译成.java
  6. ZeroClipboard2跨浏览器复制粘贴
  7. matlab上机绘图实验心得,matlab实验心得总结
  8. 工厂模式简介-作用和好处
  9. Gitlab+Docker构建流水线部署
  10. vue实现收起展开面板,让你的页面动态起来