![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Thread
文章平均质量分 71
草莓盼盼是胖胖
大胆假设,小心求证
展开
-
线程池参数配置
代码示例import java.util.concurrent.ArrayBlockingQueue;import java.util.concurrent.ThreadPoolExecutor;import java.util.concurrent.TimeUnit;public class CommonThreadPoolExecutor { private static final int CORE_POOL_SIZE = ?; private static final in原创 2021-02-06 20:00:50 · 278 阅读 · 0 评论 -
Java ThreadPoolExecutor的拒绝策略CallerRunsPolicy
CallerRunsPolicyexecute 去执行新任务,也就是main线程去执行,这种策略会降低新任务提交速度,影响整体性能。main方法 public static void main(String[] args) { ExecutorService es = new ThreadPoolExecutor(2, 2, 0L, TimeUnit.MILLISECONDS, new ArrayBlockingQueue<Runnab原创 2021-01-24 20:52:51 · 1525 阅读 · 0 评论 -
CompletableFuture使用
CompletableFuture使用在之前多线程的文章中会遇到一些问题: while(!fs.isDone());//Future返回如果没有完成,则一直循环等待,直到Future返回完成 System.out.println(fs.get()); //打印各个线程(任务)执行的结果1)若Future返回没有完成,当前主线程是堵塞的,主线程业务会一直等着。2)轮询调用isDone,不优雅。解决上述问题并应对更多的需要:1)很多个异步线程执行时间不转载 2021-01-23 08:00:58 · 376 阅读 · 0 评论 -
JAVA多线程五种创建方式
JAVA多线程三种创建方式一、继承Thread类Mythread类/** * @creater keke * @time 2021/1/20 16:48 * @description */public class MyThread extends Thread { @Override public void run() { //通过继承Thread类的方式实现多线程时,可以直接使用this获取当前执行的线程 System.out原创 2021-01-20 20:54:30 · 154 阅读 · 0 评论