首页 > 其他分享 >Executors:线程池的工具类处理线程

Executors:线程池的工具类处理线程

时间:2022-11-30 12:33:09浏览次数:51  
标签:execute MyRunnable Executors 线程 new 工具 pool

Executors:线程池的工具类处理线程

Executors得到线程池对象的常用方法
Executors:线程池的工具类通过调用方法返回不同类型的线程池对象。

Executors的底层其实也是基于线程池的实现类ThreadPoolExecutor创建线程池对象的。

package com.itheima.d8_threadpool;

import java.util.concurrent.*;

/**
    目标:使用Executors的工具方法直接得到一个线程池对象。
 */
public class ThreadPoolDemo3 {
    public static void main(String[] args) throws Exception {
        // 1、创建固定线程数据的线程池
        ExecutorService pool = Executors.newFixedThreadPool(3);

        pool.execute(new MyRunnable());
        pool.execute(new MyRunnable());
        pool.execute(new MyRunnable());
        pool.execute(new MyRunnable()); // 已经没有多余线程了
    }
}

Executors使用可能存在的陷阱
大型并发系统环境中使用Executors如果不注意可能会出现系统风险。

Executors使用可能存在的陷阱
大型并发系统环境中使用Executors如果不注意可能会出现系统风险。

 

Executors工具类底层是基于什么方式实现的线程池对象?
线程池ExecutorService的实现类:ThreadPoolExecutor

Executors是否适合做大型互联网场景的线程池方案?
不合适。
建议使用ThreadPoolExecutor来指定线程池参数,这样可以明确线程池的运行规则,规避资源耗尽的风险。

 

标签:execute,MyRunnable,Executors,线程,new,工具,pool
From: https://www.cnblogs.com/popopopopo/p/16938061.html

相关文章

  • 线程池处理Runnable任务
    线程池如何处理Runnable任务使用ExecutorService的方法:voidexecute(Runnabletarget)packagecom.itheima.d8_threadpool;publicclassMyRunnableimplementsRunn......
  • FusionCharts的使用方法 - 公司所用的flash式的图像统计工具
    我们公司一直用这个图表统计,最近整理了一下相关文档,提供大家学习。博客对于其的介绍:一、简介Ø FusionCharts 是InfoSoft Global 公司的一个产品,InfoSoft Global 公司......
  • Qt网络编程-从0到多线程编程
    网络编程开发1.简介两个协议,一个是TCP协议,一个是UDP协议先说TCP:TCP的话,服务器端需要端口监听,直到有客户端进行连接发送过来请求数据,然后客户端根据请求数据进行应答,之......
  • Qt多线程开发总览,既然用到了就记录一下
    多线程在LBD_VM_Intercom中使用的一个简单的实例陶工给的dll需要进行异步操作才可以将视频画面附到窗体上,必须得在画面出现之后才可以附加画面,否则就有可能出现意外bug,所......
  • Python工具箱系列(十七)
    很多软件工程师都认为MD5是一种加密算法,然而这种观点是不对的。作为一个1992年第一次被公开的算法,到今天为止已经被发现了一些致命的漏洞。本文讨论MD5在密码保存方面的......
  • Qt自带的阴影类、跨线程问题汇总、hover相关、全屏轮子,一些思考。
    一点思考:故事的结局重不重要?我语文不好,但是我数学不好。我数学不好,但是我英语不好。我英语不好,但是我物理不好。我物理不好,但是我化学不好。我化学不好,但是我历史不好......
  • 线程池
    线程池什么是线程池?线程池就是一个可以复用线程的技术。不使用线程池的问题如果用户每发起一个请求,后台就创建一个新线程来处理,下次新任务来了又要创建新线程,而创建新线......
  • java Http请求工具类
    importcom.alibaba.fastjson.JSON;importcom.alibaba.fastjson.JSONObject;importlombok.extern.slf4j.Slf4j;importjavax.net.ssl.*;importjava.io.*;importj......
  • sysbench性能测试工具安装
    sysbench工具安装安装1、 将下载的sysbench压缩包上传到测试主机的任意目录,并解压。tarxvfsysbench-0.5.tar.gz2、 在root权限下安装如下依赖yum installgccli......
  • Python爬取m3u8视频(多线程)- OK好用,代码在文章尾
    摘自:https://www.cnblogs.com/python147/p/14511627.html1.前言本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。......