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

网站建设合同范本站长之家seo综合查询

网站建设合同范本,站长之家seo综合查询,做蛋糕网站策划书,小语种网站建设📣 📣 📣 📢📢📢 ☀️☀️你好啊!小伙伴,我是小冷。是一个兴趣驱动自学练习两年半的的Java工程师。 📒 一位十分喜欢将知识分享出来的Java博主⭐️⭐️⭐️,擅…

📣 📣 📣 📢📢📢
☀️☀️你好啊!小伙伴,我是小冷。是一个兴趣驱动自学练习两年半的的Java工程师。
📒 一位十分喜欢将知识分享出来的Java博主⭐️⭐️⭐️,擅长使用Java技术开发web项目和工具
📒 文章内容丰富:覆盖大部分java必学技术栈,前端,计算机基础,容器等方面的文章
📒 如果你也对Java感兴趣,关注小冷吧,一起探索Java技术的生态与进步,一起讨论Java技术的使用与学习
✏️高质量技术专栏专栏链接: 微服务数据结构netty,单点登录,SSMSpringCloudAlibaba
😝公众号😝想全栈的小冷,分享一些技术上的文章,以及解决问题的经验
当前专栏JUC系列

线程池

池化技术、

程序的运行 本质: 占用系统的资源 ! 优化资源的使用 =>池化技术

线程池,连接池,内存吃,对象池, 频繁的创建销毁 十分的浪费资源

线程池的好处:

  1. 降低资源的消耗
  2. 提高响应的速度
  3. 方面管理

线程的复用 可以控制最大并发数量,管理线程

三大方法

下图来自 阿里巴巴开发规约手册

image-20220302213232478

代码实例

public class poolDemo {public static void main(String[] args) {//单个线程ExecutorService Threadpool = Executors.newSingleThreadExecutor();// 创建一个固定的线程池大小//ExecutorService Threadpool = Executors.newFixedThreadPool(5);//可以伸缩的 遇强则强// ExecutorService Threadpool = Executors.newCachedThreadPool();try {for (int i = 0; i < 10; i++) {Threadpool.execute(() -> {System.out.println(Thread.currentThread().getName() + "=> ok");});}} catch (Exception e) {e.printStackTrace();} finally {//线程池使用完毕 一定要关闭Threadpool.shutdown();}}
}

三大方法的创建代码

public static ExecutorService newSingleThreadExecutor() {return new FinalizableDelegatedExecutorService(new ThreadPoolExecutor(1, 1,0L, TimeUnit.MILLISECONDS,new LinkedBlockingQueue<Runnable>()));
}public static ExecutorService newFixedThreadPool(int nThreads) {return new ThreadPoolExecutor(nThreads, nThreads,0L, TimeUnit.MILLISECONDS,new LinkedBlockingQueue<Runnable>());
}public static ExecutorService newCachedThreadPool() {return new ThreadPoolExecutor(0, Integer.MAX_VALUE,60L, TimeUnit.SECONDS,new SynchronousQueue<Runnable>());
}

七大参数

七大参数

public ThreadPoolExecutor(int corePoolSize, //核心线程池大小int maximumPoolSize,// 最大核心线程数大小long keepAliveTime,// 超时了没有人调用就会释放TimeUnit unit,// 超时单位BlockingQueue<Runnable> workQueue,// 阻塞队列ThreadFactory threadFactory, // 线程工厂,创建线程的RejectedExecutionHandler handler// 拒绝策略) 

这七个参数分别有什么作用呢,思路图

image-20220303182515651

手动创建线程池,不用封装好的方法,使用原生的线程池方法

ThreadPoolExecutor threadpool = new ThreadPoolExecutor(2,5,3,TimeUnit.SECONDS,new LinkedBlockingDeque<>(3),Executors.defaultThreadFactory(),// 这个时候 举例子,银行的人满了 这种方式就是 不处理 抛出异常new ThreadPoolExecutor.AbortPolicy()
);

线程池四种拒绝策略

  • new ThreadPoolExecutor.AbortPolicy() 银行的人满了 这种方式就是 不处理 抛出异常

    执行效果

    image-20220303183829048

  • new ThreadPoolExecutor.CallerRunsPolicy() 银行人满了,哪里来的去哪里,回到调用线程输出,不会异常

    执行结果

    image-20220303183923829

  • new ThreadPoolExecutor.DiscardPolicy() 队列满了 就抛出全部任务,

    执行结果

    image-20220303184035431

  • new ThreadPoolExecutor.DiscardOldestPolicy() 尝试和最早的线程竞争 查看是否有位置,没有就抛出任务

    执行结果

    image-20220303184127445

代码实例

public class poolDemo {public static void main(String[] args) {ThreadPoolExecutor threadpool = new ThreadPoolExecutor(2,5,3,TimeUnit.SECONDS,new LinkedBlockingDeque<>(3),Executors.defaultThreadFactory(),new ThreadPoolExecutor.DiscardOldestPolicy());//单个线程//ExecutorService Threadpool = Executors.newSingleThreadExecutor();// 创建一个固定的线程池大小//ExecutorService Threadpool = Executors.newFixedThreadPool(5);//可以伸缩的 遇强则强// ExecutorService Threadpool = Executors.newCachedThreadPool();try {//最大承载如何计算 : 阻塞队列+max数量//超过的话就会 爆出异常 :RejectedExecutionExceptionfor (int i = 1; i <= 15; i++) {threadpool.execute(() -> {System.out.println(Thread.currentThread().getName() + "=> ok");});}} catch (Exception e) {e.printStackTrace();} finally {//线程池使用完毕 一定要关闭threadpool.shutdown();}}
}

最大负载

  1. CPU密集型 有几个核心就定义几个,可以保证效率最高

        Runtime.getRuntime().availableProcessors() //获取cpu 核心数
    
  2. IO 密集型 判断程序中 十分消耗IO资源的线程,如: 程序 有 15个大型任务,io 十分占中资源,那么设定的比任务数量大 就可以保证一定性能、

http://www.dtcms.com/wzjs/397534.html

相关文章:

  • 南京公共工程建设中心网站营销型网站建设运营
  • discuz做电影网站如何查询百度收录
  • 上海哪家网站建设公司好cps广告联盟
  • 黄网网站是怎么做的微博推广
  • 做大型网站建设seo数据优化
  • 代做网站作业企业如何建站
  • 上海人才网官网招聘招聘seo知识分享
  • 东城区网站建设成都seo论坛
  • 如何做网站路径分析长沙seo搜索
  • 梅县区住房和城乡规划建设局网站北京seo技术交流
  • 万荣做网站谷歌ads广告投放
  • 有什么做日结兼职的网站化工网站关键词优化
  • 吉野家网站谁做的搜索引擎网站优化推广
  • 三网站建设一键关键词优化
  • 模板建站和定制建站南京网站设计公司
  • 开设公司网站优化推荐
  • 参考效果图网站九江seo
  • 获取网站访问者qq号百度seo关键词工具
  • 节日彩灯制作公司郑州网站优化公司
  • 怎么做网站设计方案百度自己的宣传广告
  • 我国政府网站建设现状百度应用宝
  • 双流区规划建设局官方网站网站推广的几种方法
  • word页面设计模板百度seo优化多少钱
  • 新手如何做分销代哥seo
  • 武汉专业网站建设推广有趣的网络营销案例
  • 网站治做啊app佛山做网站的公司哪家好
  • php做网站有哪些优点谷歌广告上海有限公司
  • 软件开发和网站开发难度拉新推广怎么找渠道
  • 网站加速免费长沙市网站制作
  • 建网站做seo百度seo综合查询