一、分而治之
fork/join 二叉树 二分查找 快速排序 归并排序 mapreduce 动态规划
1、fork/join(工作密取)
RecursiveTask要有返回值
RecursiveAction没有返回值
2、countDownLatch(闭锁)
作用:直指一个线程等待其他的线程执行完后再执行,(就是一个加强版的join())
3、CyclicBarrier
4、Semaphore(控制同时访问某个特定资源的线程数量,例如用于流量控制)
5、Exchanger用于两个线程间的数据交换
6、Future
isDone()不管正常或者异常结束又或者自己取消,都会返回true
isCancelled如果任务在完成前被取消,返回true;其他情况返回false
cancel()(1)任务还没开始,返回false
(2)任务已经开始,cancel(true)中断正在进行的任务,中断成功返回true;cannel(false)不去中断已经进行的任务
(3)任务已经结束,返回false