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

igem网站建设百度上怎么打广告宣传

igem网站建设,百度上怎么打广告宣传,新闻类网站设计,重庆市建设工程信息网人员公示前言:在之前的文章中介绍过线程池的核心原理,在一次面试中面试官让手写线程池,这块知识忘记的差不多了,因此本篇文章做一个回顾。 希望能够加深自己的印象以及帮助到其他的小伙伴儿们😉😉。 如果文章有什么…

前言:在之前的文章中介绍过线程池的核心原理,在一次面试中面试官让手写线程池,这块知识忘记的差不多了,因此本篇文章做一个回顾。
希望能够加深自己的印象以及帮助到其他的小伙伴儿们😉😉。
如果文章有什么需要改进的地方还请大佬不吝赐教👏👏。
小威在此先感谢各位大佬啦~~🤞🤞

在这里插入图片描述

🏠个人主页:小威要向诸佬学习呀
🧑个人简介:大家好,我是小威,一个想要与大家共同进步的男人😉😉
目前状况🎉:24届毕业生,曾经在某央企公司实习,目前在某税务公司实习👏👏

💕欢迎大家:这里是CSDN,我总结知识的地方,欢迎来到我的博客,我亲爱的大佬😘

在这里插入图片描述

以下正文开始

在线程池核心原理篇介绍过线程池的核心原理,今天来模拟线程池和工作队列的流程,以及编写代码和测试类进行测试。下面附下之前线程池的核心流程:
在这里插入图片描述
在线程池核心原理的源码中,涉及到了一系列的流程,包括线程池队列数量是否已满,运用什么样的拒绝策略等。在我们手写线程池的代码中,不需要考虑那么多因素,只需要模拟简单的情景和过程,因此整体来讲还是比较简单的。

手写线程池,必不可少的组件有任务队列,任务的消费者线程池,线程池创建等。我们也可定义构造方法,创建指定大小的线程池线程个数。当然在使用完线程池中的线程后,我们需要考虑将其销毁或关闭。
在这里插入图片描述

相关代码和解释如下:

package XIAOWEI;import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.LinkedBlockingQueue;
import java.util.stream.IntStream;public class ThreadPool {private static final int WorkQueueSIZE = 5;private BlockingQueue<Runnable> workQueue;private List<WorkThread> workThreads=new ArrayList<WorkThread>();/*** @author xiaowei* @param poolSize* @param workQueue* 构造方法,传线程池的大小和阻塞队列*/public ThreadPool(int poolSize,BlockingQueue<Runnable> workQueue) {this.workQueue = workQueue;IntStream.range(0,poolSize).forEach((i)->{WorkThread workThread=new WorkThread();workThread.start();workThreads.add(workThread);});}/*** @param poolSize* 在ThreadPool的构造方法中传入线程池的大小*/public ThreadPool(int poolSize){this(poolSize,new LinkedBlockingQueue<>(WorkQueueSIZE));}/*** @param task* 通过线程池执行任务*/public void extcute(Runnable task){try {workQueue.put(task);} catch (InterruptedException e) {e.printStackTrace();}}public void shutdown(){if(workThreads!=null && workThreads.size()>0){workThreads.stream().forEach((workThread) -> {workThread.interrupt();});}}/*** 内部类 源源不断的消耗workQueue中的任务*/class WorkThread extends Thread {@Overridepublic void run() {Thread currentThread = Thread.currentThread();// 死循环 不断一直消费队列中的任务 直到任务被消费完全while (true) {try {if (currentThread.isInterrupted()) {break;}Runnable workTasK = workQueue.take();workTasK.run();} catch (InterruptedException e) {currentThread.interrupt();}}}}
}

相关测试代码如下:

package XIAOWEI;import java.util.stream.IntStream;public class ThreadPoolTest {public static void main(String[] args) {ThreadPool threadPool = new ThreadPool(5);IntStream.range(0,10).forEach((i)->{threadPool.extcute(()->{System.out.println(Thread.currentThread().getName()+"2023一起加油");});});threadPool.shutdown();}
}

一共在线程池中加入了五个线程和十个任务,因此每个线程会执行两个任务。
测试结果如下图所示:
在这里插入图片描述

好了,本篇文章就先分享到这里了,后续会继续分享其他方面的知识,感谢大佬认真读完支持咯~
在这里插入图片描述

文章到这里就结束了,如果有什么疑问的地方请指出,诸佬们一起讨论😁
希望能和诸佬们一起努力,今后我们顶峰相见🍻
再次感谢各位小伙伴儿们的支持🤞

在这里插入图片描述

http://www.tj-hxxt.cn/news/14589.html

相关文章:

  • 问政烟台网站谷歌浏览器下载安装2022
  • 网站建设及推广图片cps广告联盟平台
  • 个人作品展示 网站宁波seo推广联系方法
  • 易语言做网站seo搜索引擎优化师
  • 深圳福田网站优化网络营销培训学校产品推广外包
  • 网站的前端开发云搜索
  • php网站开发面试百度搜索引擎的网址
  • h5如何做多页面网站全国疫情又严重了
  • 镇江做网站百度官方首页
  • 微信公众号 做不了微网站做网络推广有哪些平台
  • wordpress 主题 引入js长清区seo网络优化软件
  • 沈阳人流厦门seo
  • 新建设电影院 网站合肥seo排名优化公司
  • 包包网站建设学管理培训班去哪里学
  • 电商网站制作设计今日最新足球推荐
  • 网站建设选青岛的公司好不好适合小学生摘抄的新闻2022年
  • 网站搜索引擎优化的内容谷歌收录查询
  • 专业医疗网站建设网上推广方式
  • h5开发网站优点宁波网络推广平台
  • 手机网站自适应代码郑州做网站推广资讯
  • 51我们一起做网站陕西新闻今日头条
  • 开源免费商用cmswin7优化配置的方法
  • 多模室内设计网站seo外链发布平台
  • photoshop正版软件多少钱云南seo公司
  • 在线做网页的网站云南网络营销公司
  • wordpress googlemap搜索引擎优化seo专员
  • 做外贸做什么英文网站好一台电脑赚钱的门路
  • 专业做数据的网站搜索引擎快速优化排名
  • 创新的南昌网站制作steam交易链接是什么
  • 深圳网站建设如何制作短视频运营