多线程
多线程
你怎么不笑了
这个人很笨,什么都不会写
展开
-
多线程--SynchronousQueue
SynchronousQueue 同步队列。没有容量 写入一个元素,必须等待取出之后才可继续写入元素 Put之后必须take,才能继续put public class Demo1 { public static void main(String[] args) { SynchronousQueue<String> synchronousQueue = new SynchronousQueue<String>(); ExecutorSer.原创 2021-07-26 14:23:13 · 98 阅读 · 0 评论 -
多线程--BlockingQueue
BlockingQueue 方式 抛出异常 不抛异常 阻塞等待 超时等待 添加元素 add() offer() put() offer(E e, long timeout, TimeUnit unit) 移除元素 remove() poll() take() poll(long timeout, TimeUnit unit) 检测队首元素 element() peek() - - 抛出异常 /** * 抛出异常 */ public static void .原创 2021-07-26 14:22:40 · 157 阅读 · 0 评论 -
多线程--Semaphore
package com.hll.demo3; import java.util.Random; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Semaphore; /** * Semaphore 信号量,可以用来控制同时访问特定资源的线程数量,通过协调各个线程,以保证合理的使用资源 * @author helele * @原创 2021-06-07 11:35:04 · 186 阅读 · 0 评论 -
多线程--CyclicBarrier
介绍 CyclicBarrier 允许一组线程全部等待彼此达到共同屏障点的同步辅助 package com.hll.demo2; import java.util.concurrent.BrokenBarrierException; import java.util.concurrent.CyclicBarrier; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; /** * C.原创 2021-06-07 11:30:48 · 102 阅读 · 0 评论 -
多线程--CountDownLatch
介绍 CountDownLatch是一个辅助工具类,用来同步一个或者多个任务,强制他们等待由其他任务执行一组操作完成,在完成之前将会一直等待 CountDownLatch对象设置一个初始计数值,任何在这个对象上调用await()的方法都将阻塞,直到计数为0 CountDownLatch只能触发一次,计数值不会重置 示例1: package com.hll.dome1; import java.util.Collections; import java.util.concurrent.CountDown.原创 2021-06-07 11:28:00 · 486 阅读 · 0 评论