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

平顶山网站网站建设网页设计与制作教程 刘瑞信 pdf

平顶山网站网站建设,网页设计与制作教程 刘瑞信 pdf,h5网站开发培训哪里好,青岛专业制作网站的公司线程池的创建方式#xff1a; 1、newCachedThreadPoo#xff1a; 创建一个可缓存的线程池#xff0c;当线程池的线程数量超过任务数量时#xff0c;自动回收空闲线程#xff0c;当线程当任务数量超过线程池的线程数量时#xff0c;自动添加新线程; ExecutorService exec…线程池的创建方式 1、newCachedThreadPoo 创建一个可缓存的线程池当线程池的线程数量超过任务数量时自动回收空闲线程当线程当任务数量超过线程池的线程数量时自动添加新线程; ExecutorService executor Executors,newCachedThreadPool(); for (int i 0;i 10; i) {//模拟10个任务executor.submit(new Runnable() {Overridepublic void run() {// 线程执行的代码}}); executor.shutdown () ; 2、newFixedThreadPool(int n) 创建一个固定大小的线程池线程数量固定为n当任务数量超过线程池的线程数量时任务会被放在任务队列中等待执行。 ExecutorService executor Executors.newFixedThreadPool(5); for (int i 0; i 10; i) {//模拟10个任务executor.submit (new Runnable () {Overridepublic void run() {// 线程执行的代码} }); } executor.shutdown () ; 3、newSingleThreadExecutorl : 创建一个单线程的线程池所有任务都在同一个线程中顺序执行。 ExecutorService executor Executors.newSingleThreadExecutor(); for (int i 0; 10; i) { //模拟10个任务 executor.submit (new Runnable(){ Override public void run() {// 线程执行的代码}}); } executor.shutdown ();4、newScheduledThreadPool(int corePoolSize) ScheduledExecutorService executor Executors.newScheduledThreadPoo1(2); for (int i 0;i 10; i) { //模拟10个任务 executor.schedule(new Runnable () {Overridepublic void run{// 线程执行代码} },5,TimeUnit.SECONDS); } executor.shutdown () ;建一个定时任务的线程池可以在指定的时间间隔内周期性的执行任务在阿里巴巴这么开发手册中建议开发者手动创建线程。 [强制]线程池不允许使用 Executors 去创建而是通过ThreadPoolExecutor的方式这4样的处理方式让写的同学更加明确线程池的运行规则规避资源耗尽的风险。 说明: Executors 返回的线程池对象的弊端如下1)FixedThreadPool和 SinaleThreadPool : 允许的请求队列长度为 Integer.MAX_VALUE可能会堆积大量的请求从而导致 OOM2)CachedThreadPool : 允许的创建线程数量为 Integer.MAX_VALUE可能会创建大量的线程从而导致 OOM。 这是因为Executors工具类虽然提供了一些便利的方法来创建线程池这些方法并没有很好的考虑到线程池的使用场景和实际需求容易导致线程池的滥用。进而引发各种问题 我们可以通过ThreadPoolExecutor手动创建: 自定义设置参数: corePoolSize :线程池的核心线程数即在没有任务需要执行时线程池的大小 maximumPoolSize线程池最大能够容纳的线程数当线程池的工作队列已满并且仍有新的任务到来时线程池就会创建新的线程直到达到该参数指定的上限 keepAliveTime: 当线程池中线程数量超过核心线程数时这时多余的空闲线程在终止之前等待新任务的最长时间 unitkeepAliveTime参数的时间单位 workQueue任务队列用于存放等待执行的任务 threadFactory线程工厂用于创建新线程的工厂 handler拒绝策略当线程池无法处理新任务时的处理方式 ExecutorService threadPool new ThreadPoolExecutor(2,// 核心线程数10,// 最大线程数2L,//空闲线程存活时间TimeUnit.SECONDS,// 空闲线程活跃时间单位new LinkedBlockingQueueRunnable(5),// 线程池任务队列Executors.defaultThreadFactory()// 默认线程工厂new ThreadPoolExecutor.AbortPolicy() // 拒绝策略);try {for (int i 0; 10; i) { // 模拟10个用户来办理业务threadPool.execute(() -{// 线程要执行的任务; });}} catch (Exception e) {e.printstackTrace() ;} finally {threadPool.shutdown(); // 关闭线程池}
http://www.pierceye.com/news/439386/

相关文章:

  • 网站开发深天津设计公司排行榜
  • 做tcf法语听力题的网站公司网页简介
  • 十堰做网站最专业的公司深圳企业网查询
  • 购物网站大全排名调查drupal与wordpress哪个容易
  • 网站建设彳金手指排名网站开发完没人运营
  • 网站建设是设开发公司质量管理流程
  • 金沙网站怎么做代理wordpress tag=
  • 做网站必须花钱吗建筑人才网证书查询
  • 0基础网站建设模板工商注册官方网站
  • 河南网站设计公司价格网站在建设中是什么意思
  • 网站建设公司的成本有哪些方面四川省城乡建设网查询
  • 和什么人合作做游戏视频网站做推送网站
  • 做竞价网站访问突然变少施工企业负责人带班检查计划
  • 网站统计数据分析wordpress安装 第二步
  • 网站续费续的是什么钱Wordpress1002无标题
  • 公司入口网站appui设计师创意平台
  • 济南住房和城乡建设厅网站影视广告创意拍摄
  • 卢松松网站源码网站建设讲师招聘
  • wordpress建站网页无法运vs网站开发表格大小设置
  • 网站怎么制作教程科技小论文怎么写
  • 青岛外贸建设网站制作小程序制作页面教程
  • wordpress 整合phpseo推广有效果吗
  • 毕业设计做网站代码营销推广软文案例
  • 网站seo 文章转载 修改标题手机oa办公系统下载
  • 营销型网站设计工资商城是什么平台
  • 有没有可以在线做化学实验的网站乐从网站制作
  • 网站qq 微信分享怎么做的网络销售网站有哪些
  • 长沙电商网站制作网页设计模板素材旅游
  • 阿里巴巴 网站 建设wordpress支付宝红包
  • 如何建一个企业网站网站建设方案保障措施