博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
线程的并发工具类
阅读量:2742 次
发布时间:2019-05-13

本文共 691 字,大约阅读时间需要 2 分钟。

常用的并发工具类

CountDownLatch

作用:是一组线程等待其他的线程完成工作以后在执行,加强版join

await用来等待,countDown负责计数器的减一

CyclicBarrier

让一组线程达到某个屏障,被阻塞,一直到组内最后一个线程达到屏障时,屏障开放,所有被阻塞的线程会继续运行CyclicBarrier(int parties)

CyclicBarrier(int parties, Runnable barrierAction),屏障开放,barrierAction定义的任务会执行

CountDownLatch和CyclicBarrier辨析

1、countdownlatch放行由第三者控制,CyclicBarrier放行由一组线程本身控制

2、countdownlatch放行条件》=线程数,CyclicBarrier放行条件=线程数

Semaphore

控制同时访问某个特定资源的线程数量,用在流量控制

Exchange

两个线程间的数据交换,

Callable、Future和FutureTask

isDone,结束,正常还是异常结束,或者自己取消,返回true;

isCancelled 任务完成前被取消,返回true;

cancel(boolean):

  1. 任务还没开始,返回false
  2. 任务已经启动,cancel(true),中断正在运行的任务,中断成功,返回true,cancel(false),不会去中断已经运行的任务
  3. 任务已经结束,返回false

包含图片和文字的文档的处理:图片(云上),可以用future去取图片,主线程继续解析文字。

 

转载地址:http://rowad.baihongyu.com/

你可能感兴趣的文章
虎扑后端一面
查看>>
虎扑二面(男技术女HR)
查看>>
Redis发布和订阅功能 事务
查看>>
Ubuntu16.04上的一些记录
查看>>
图说VS2019的一个必现崩溃(续)
查看>>
是什么让生命闪光
查看>>
Windows平台高级调试与优化
查看>>
格友会讲
查看>>
拍案惊奇——软件调试实战训练营暑期特别班(v2.1)
查看>>
过则勿惮改
查看>>
GPU高级调试与优化
查看>>
AI推理和高级优化训练营
查看>>
万般由,何必读书?
查看>>
循环交换与局部性
查看>>
AI推理和高级优化训练营
查看>>
纳秒时代
查看>>
图说2018
查看>>
LINUX平台高级调试和优化(2019庐山站)
查看>>
在调试器里看LINUX内核态栈溢出
查看>>
跑步机上的精彩人生——Linus大神传奇
查看>>