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

做网站二维码高效省心的app定制开发平台

做网站二维码,高效省心的app定制开发平台,wap网站平台,seo教学网seo核心线程数1.最大线程5.队列5.存活时间10s 1.场景一 如果核心线程数.被一直占用得不到释放.新进来1个任务.会怎么样?答: 会在队列中中死等. 只要进来的任务.不超过队列的长度,就会一直挡在队列中死等 package com.lin;import java.util.concurrent.Executors; import java.u…核心线程数1.最大线程5.队列5.存活时间10s 1.场景一 如果核心线程数.被一直占用得不到释放.新进来1个任务.会怎么样?答: 会在队列中中死等. 只要进来的任务.不超过队列的长度,就会一直挡在队列中死等 package com.lin;import java.util.concurrent.Executors; import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.TimeUnit; import java.util.concurrent.LinkedBlockingQueue;/*** author lin*/ public class ThreadPoolExample {public static void main(String[] args) {// 创建线程池ThreadPoolExecutor threadPoolExecutor new ThreadPoolExecutor(1, // 核心线程数5, // 最大线程数1, // 空闲线程存活时间TimeUnit.MINUTES, // 存活时间的单位new LinkedBlockingQueueRunnable(6) // 任务队列);// 提交第一个永不释放的任务给线程池threadPoolExecutor.execute(() - {try {System.out.println(Task 1 is running and will never complete);while (true) {// 模拟一个永不释放的任务Thread.sleep(1000);}} catch (InterruptedException e) {System.out.println(Task 1 was interrupted);Thread.currentThread().interrupt();}});// 等待一段时间然后提交第二个任务try {System.out.println(等待2秒);Thread.sleep(2000); // 等待2秒确保第一个任务已开始执行} catch (InterruptedException e) {e.printStackTrace();}for (int i 0; i 6; i) { //模拟任务数量int finalI i;threadPoolExecutor.execute(() - {try {System.out.println(Task finalI is running);Thread.sleep(1000); // 模拟任务运行System.out.println(Task finalI is completed);} catch (InterruptedException e) {e.printStackTrace();}});}// 打印线程池状态new Thread(() - {while (true) {try {System.out.println(Active Threads: threadPoolExecutor.getActiveCount());System.out.println(Pool Size: threadPoolExecutor.getPoolSize());System.out.println(Queue Size: threadPoolExecutor.getQueue().size());Thread.sleep(5000); // 每5秒打印一次线程池状态} catch (InterruptedException e) {Thread.currentThread().interrupt();break;}}}).start();// 等待足够的时间观察线程池状态//try {// Thread.sleep(60000); // 主线程等待60秒//} catch (InterruptedException e) {// e.printStackTrace();//}// 关闭线程池//threadPoolExecutor.shutdownNow();//try {// // 等待所有任务完成// if (!threadPoolExecutor.awaitTermination(60, TimeUnit.SECONDS)) {// threadPoolExecutor.shutdownNow();// }//} catch (InterruptedException e) {// threadPoolExecutor.shutdownNow();//}} } 2.场景二 如果核心线程数,一直被占用.来了6个任务.效果会怎么样答: 这是任务总数超过了队列的长度.线程池会创建新的线程来处理这个任务.根据队列的不同.消费任务的顺序不一样.以LinkedBlockingQueue.1,2,3,4,5添加到队列中.第6个任务来了.会创建线程先消费. 然后再又这个线程来处理1,2,3,4,5来处理. 然后处理完.空闲线程等待存活时间.然后被回收.线程池恢复到最开始的时候. 3.场景三 如果核心线程数和最大线程数的其他线程同时空置了,最大线程数的其他线程还没有被回收.现在队列中的任务,会被那个消费答: 会优先被核心线程先消费
http://www.dnsts.com.cn/news/172098.html

相关文章:

  • 网站模板制作教程视频校园局域网设计方案
  • 响应网站长春网站建设v1
  • 顺德建设网站公司临夏州建设厅官方网站
  • 文山网站建设兼职公司网站本地如何弄
  • 网站运营的提成方案怎么做网站里添加斗鱼直播的视频怎么做
  • 做游戏必备的几个网站网站建设广州
  • 网站列表页怎么做内链柳州商城网站开发
  • 同城可以做别人一样的门户网站吗wordpress主题电影
  • php cms网站代码如何做优化
  • 哪里去找做的好看的网站怎样注册一个网站做电商
  • 虚拟主机能建设网站吗公司建网站费用
  • 如何建网站不花钱杭州哪家网站建设比较好
  • 深圳龙华新区住房和建设局网站部门网站建设内容方案
  • 怎么做推广和宣传企业做网站石家庄网站优化招聘
  • 馆陶县网站wordpress获取title
  • 网站网页设计收费vue.js和vs做网站比较
  • 济南 网站设计公司大数据营销是做什么的
  • 网站app在线制作文明网站机制建设
  • 怎么免费做网站不要域名深圳网页设计培训机构
  • 重庆网站建设培训机构厦门有什么网站制作公司
  • 沈阳免费建网站网站的建设与运营模式
  • wordpress博客福利网整站源码企业大学网站建设计划
  • 建设银行网上银行网站通用网站建设需求分析
  • 网站新站整站排名天津网站建设哪个好
  • 教做游戏的网站做网站电脑需要配置很好吗
  • 企业建站 平台网站菜单导航
  • wordpress网站模版自己可以做微信公众号吗
  • 基于网站的网络营销方法有哪些山东省工程建设管理协会网站
  • 网站被挂黑链对网站有啥影响湖北三丰建设集团股份网站
  • 做企业网站什么软件好外贸网站建设哪里实惠