当前位置: 首页 > news >正文

自动化培训网站建设北京网站开发哪好

自动化培训网站建设,北京网站开发哪好,网站开发加盟,商丘网站公司电话号码文章目录 线程池的概念池的目的线程池的优势为什么从池子里拿线程更高效?构造方法参数讲解线程拒绝策略模拟实现线程池一个线程池设置多少线程合适? 线程池的概念 线程池:提前把线程准备好,创建线程不是直接从系统申请&#xff0…

文章目录

    • 线程池的概念
    • 池的目的
    • 线程池的优势
    • 为什么从池子里拿线程更高效?
    • 构造方法参数讲解
    • 线程拒绝策略
    • 模拟实现线程池
    • 一个线程池设置多少线程合适?

线程池的概念

线程池:提前把线程准备好,创建线程不是直接从系统申请,而是从池子里拿,线程不用了还给池子。
复用线程,平摊线程的创建与销毁的开销代价

池的目的

池的目的是提高效率,线程的创建虽然比进程轻量,频繁创建,开销也不可忽略

线程池的优势

1、避免了线程的重复创建与开销带来的资源消耗代价
2、提升了任务响应速度,任务来了直接选一个线程执行而无需等待线程的创建
3、线程的统一分配和管理,也方便统一的监控和调优

为什么从池子里拿线程更高效?

从池子里拿线程:纯粹的用户态操作。
从系统创建线程:涉及到用户态和内核态的切换,真正的切换是在内核态完成的。

结论:纯用户态操作时间可控,涉及到内核操作不可控。

构造方法参数讲解

在这里插入图片描述

参数说明
corePoolSize核心线程数
maximumPoolSize最大线程数
keepAliveTime线程保持存活时间
TimeUnit unit时间单位
workQueue因为线程池要管理很多任务,这些任务通过阻塞队列来阻止的,程序员可以手动给线程池一个阻塞队列。submit方法就是把任务放到队列中
threadFactory工厂模式,创建线程的辅助类
handler线程池拒绝策略

线程拒绝策略

在这里插入图片描述
1、如果满了,继续添加任务,添加操作跑出异常。
2、添加的线程自己负责执行这个任务。
3、丢弃最老任务
4、丢弃最新的任务

模拟实现线程池

package Test1;import java.util.concurrent.BlockingQueue;
import java.util.concurrent.LinkedBlockingQueue;public class ThreadDemo3 {//阻塞队列,添加任务private BlockingQueue<Runnable>queue=new LinkedBlockingQueue<>();//将任务添加到队列中public void submit(Runnable runnable){try {queue.put(runnable);} catch (InterruptedException e) {throw new RuntimeException(e);}}//定义线程数量public ThreadDemo3(int n){for(int i=1;i<=n;i++){Thread t=new Thread(()->{while(true) {try {Runnable runnable = queue.take();//取任务runnable.run();//执行任务} catch (InterruptedException e) {e.printStackTrace();}}});//启动线程t.start();}}
}

一个线程池设置多少线程合适?

首先
线程并不是越多越好,多少合适取决于CPU。
其次
不同程序,线程要做的活也不一样;
1、CPU密集型任务,主要做一些计算工作,要在CPU上运行。
2、IO密集型任务,主要是等待IO操作,不咋吃CPU
假设,你的线程全是任务全是使用CPU密集型任务,线程数就不能超过核心数(逻辑核心数),如果是IO任务则可以超过核心数。
但是具体还是要通过测试方式来确定(计算执行时间,同时检测资源使用状态,测试多次取均值)。

http://www.yayakq.cn/news/191718/

相关文章:

  • 电子商务网站建设的实训心得上海专业做网站的公司
  • ps做网站原形毕节网站网站建设
  • cco网站素材做ppt好的模板下载网站
  • 好的网站页面专用车网站建设价格
  • 网站被做301常用的网页编辑软件
  • 《网站建设验收报告》奉城网站建设
  • 深圳商业网站建设哪家网络营销外包专员
  • 网站备案导致网站被k网站开发案例详解下载
  • 郴州北京网站建设如何做app 的模板下载网站
  • 用wordpress仿a站网页设计培训零基础
  • 经典的响应式布局网站家具行业网站建设
  • 珠海网站建设方案优化专升本需要考些什么科目
  • 徐州建设局网新网站山东手机在线app
  • 伍佰亿营销型网站网站地址和网页地址区别
  • 深圳网站建设 贝尔利网站建设模板平台
  • wordpress网站管理插件网页微信二维码怎么扫
  • 简述网站规划的一般步骤做问卷兼职有哪些网站
  • 手机网站生成app软件做网站 提交源码 论坛
  • 延安市建设工程交易中心网站淮南微信网站建设
  • 政协网站建设方案营销云产品
  • 江苏城乡建设局网站wordpress htaccess 文件位置
  • 广州公司网站wordpress 黑条
  • 网页制作和网页制作设计seo站内优化和站外优化
  • 营销型网站建设要多少钱交网站建设域名计入什么科目
  • 长尾词挖掘工具爱站网洛阳seo网络推广
  • 创建网站的app健康东莞app怎么下载
  • 西安网站建设多钱全球十大搜索引擎排名
  • 保山公司网站建设启蒙自助建站
  • 框架网站怎么做网站建设收费标准讯息
  • 城建道桥建设集团网站毕设做购物网站系统的原因