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

江苏个人网站备案要求公司想建个网站怎么弄

江苏个人网站备案要求,公司想建个网站怎么弄,做动态在网站需要学什么,怎样做网站的seo线程饥饿死锁 在单线程的Executor中,如果任务A将任务B提交给同一个Executor,并且等待任务B的结果,就会引发死锁线程池中所有正在执行任务的线程由于等待其他仍处于工作队列中的任务而阻塞 执行时间较长的任务 执行时间较长的任务不仅会造成…

线程饥饿死锁

  • 在单线程的Executor中,如果任务A将任务B提交给同一个Executor,并且等待任务B的结果,就会引发死锁
  • 线程池中所有正在执行任务的线程由于等待其他仍处于工作队列中的任务而阻塞

执行时间较长的任务

执行时间较长的任务不仅会造成线程池阻塞,也会增加执行时间较短的任务的服务时间

对于平台库的可阻塞方法都定义了限时版本,如BlockingQueue.put,若超过等待时间,则可以中止任务或重新放回队列后续执行

设置线程池的大小

对于计算密集型的任务,在有N个处理器的系统上,线程池大小为N+1能实现最优利用率

对于其他情况

在这里插入图片描述

ThreadPoolExecutor

通过一系列参数配置线程池

  • corePoolSize:核心线程数,当allowsCoreThreadTimeOut=true且核心线程闲置时间超过keepAliveTime就会终止,否则一直存活
  • maximumPoolSize:最大线程数,超过后接下来的任务会被阻塞
  • keepAliveTime:非核心线程闲置时间,超过后非核心线程会被回收,当allowsCoreThreadTimeOut=true同样作用于核心线程
  • unit:指定keepAliveTime的时间单位
  • workQueue:线程池的任务队列,存储execute()提交的Runnable对象
  • threadFactory:线程工厂,为线程池创建新线程
  • handler:当线程池已满或无法成功执行时,使用饱和策略
public ThreadPoolExecutor(int corePoolSize,int maximumPoolSize,long keepAliveTime,TimeUnit unit,BlockingQueue<Runnable> workQueue,ThreadFactory threadFactory,RejectedExecutionHandler handler) {if (corePoolSize < 0 ||maximumPoolSize <= 0 ||maximumPoolSize < corePoolSize ||keepAliveTime < 0)throw new IllegalArgumentException();if (workQueue == null || threadFactory == null || handler == null)throw new NullPointerException();this.corePoolSize = corePoolSize;this.maximumPoolSize = maximumPoolSize;this.workQueue = workQueue;this.keepAliveTime = unit.toNanos(keepAliveTime);this.threadFactory = threadFactory;this.handler = handler;
}

管理队列任务

ThreadPoolExecutor允许提供一个BlockingQueue保持执行的任务,基本队列有3种

  • 无界队列,newFixedThreadPool和newSingleThreadPool使用LinkedBlockingQueue
  • 有界队列,如ArrayBlockingQueue,有界的LinkedBlockingQueue和PriorityBlockingQueue
  • 同步移交,newCachedThreadPool使用SynchronousQueue,避免任务排队,直接将任务从生产者移交给工作者线程

只有当任务互相独立,线程池和工作队列设置界限才是合理的,否则有界的线程池或队列可能导致线程饥饿死锁问题

饱和策略

当有界队列被填满后,将会使用饱和策略RejectedExecutionHandler,其包含

  • AbortPolicy:默认策略,抛出RejectedExecutionException,调用者需捕获异常并自行处理
  • CallerRunsPolicy:将某些任务回退给调用者,在调用了execute的线程中执行该任务(如主线程提交任务会退回给主线程执行)
  • DiscardPolicy:抛弃新提交的任务
  • DiscardOlderstPolicy:抛弃下一个将被执行的任务,尝试重新提交新的任务

线程工厂

线程池通过线程工厂创建线程,默认线程工厂创建一个新的非守护线程,可通过重新ThreadFatory的newThread方法自定义配置信息,每次创建线程都会调用该方法

如下为线程池中的线程设置名字和setUncaughtExceptionHandler

class MyThreadFactory implements ThreadFactory {@Overridepublic Thread newThread(Runnable r) {Thread thread = new Thread("AAA");thread.setUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {@Overridepublic void uncaughtException(@NonNull Thread t, @NonNull Throwable e) {System.out.println(e.toString());}});return thread;}
}

修改线程池配置

可将对象转为ThreadPoolExecutor,再调用对应属性的setter方法,但newSingleThreadExecutor除外,其使用unconfigurableExecutorService封装,只暴露了ExecutorService中的方法

public class A {public ExecutorService test() {ExecutorService cachedThreadPool = Executors.newCachedThreadPool();if (cachedThreadPool instanceof ThreadPoolExecutor) {((ThreadPoolExecutor) cachedThreadPool).setCorePoolSize(10);}return Executors.unconfigurableExecutorService(cachedThreadPool);}
}

扩展ThreadPoolExecutor

可在子类中重写

  • beforeExecute,线程执行前调用
  • afterExecute,线程执行完后调用,无论线程正常返回还是抛出异常都会调用(但任务完成后出现Error则不会)
  • terminated,线程池关闭时调用

文章转载自:
http://wanjiamegalocephaly.hwLk.cn
http://wanjiafeast.hwLk.cn
http://wanjiaidolum.hwLk.cn
http://wanjiaglycol.hwLk.cn
http://wanjiapyromania.hwLk.cn
http://wanjiatroy.hwLk.cn
http://wanjiailluviate.hwLk.cn
http://wanjialurcher.hwLk.cn
http://wanjiamicrohenry.hwLk.cn
http://wanjiaestancia.hwLk.cn
http://wanjialovestruck.hwLk.cn
http://wanjiapentacarpellary.hwLk.cn
http://wanjiapapyrograph.hwLk.cn
http://wanjiamoviemaker.hwLk.cn
http://wanjiaanodontia.hwLk.cn
http://wanjiamainliner.hwLk.cn
http://wanjiaimpress.hwLk.cn
http://wanjiagangland.hwLk.cn
http://wanjiakulakism.hwLk.cn
http://wanjianonleaded.hwLk.cn
http://wanjiaclapper.hwLk.cn
http://wanjiasunspecs.hwLk.cn
http://wanjiawey.hwLk.cn
http://wanjiaredoubt.hwLk.cn
http://wanjiarecently.hwLk.cn
http://wanjiamalefic.hwLk.cn
http://wanjiadecennial.hwLk.cn
http://wanjiaapocopate.hwLk.cn
http://wanjiaimmovability.hwLk.cn
http://wanjiaelenchus.hwLk.cn
http://wanjiaaquiferous.hwLk.cn
http://wanjiacounteractant.hwLk.cn
http://wanjiaunmolested.hwLk.cn
http://wanjiafossick.hwLk.cn
http://wanjiahateful.hwLk.cn
http://wanjiacentrality.hwLk.cn
http://wanjiaskagerrak.hwLk.cn
http://wanjiajerreed.hwLk.cn
http://wanjiaagribusiness.hwLk.cn
http://wanjiaobsidian.hwLk.cn
http://wanjialimicole.hwLk.cn
http://wanjiapole.hwLk.cn
http://wanjiarevalidate.hwLk.cn
http://wanjiadignify.hwLk.cn
http://wanjiachorizon.hwLk.cn
http://wanjiatelerecording.hwLk.cn
http://wanjianewy.hwLk.cn
http://wanjiadisrepute.hwLk.cn
http://wanjiareassertion.hwLk.cn
http://wanjiamadrono.hwLk.cn
http://wanjiafalcon.hwLk.cn
http://wanjiaechoism.hwLk.cn
http://wanjianakhodka.hwLk.cn
http://wanjiaedify.hwLk.cn
http://wanjiarendition.hwLk.cn
http://wanjiapaunch.hwLk.cn
http://wanjiabustup.hwLk.cn
http://wanjiapiscatory.hwLk.cn
http://wanjiaelucidative.hwLk.cn
http://wanjiapolonium.hwLk.cn
http://wanjiacrossline.hwLk.cn
http://wanjiabackcourt.hwLk.cn
http://wanjiafishfall.hwLk.cn
http://wanjiabeery.hwLk.cn
http://wanjiarent.hwLk.cn
http://wanjiasyllabic.hwLk.cn
http://wanjiapentolite.hwLk.cn
http://wanjiaphototelescope.hwLk.cn
http://wanjiapaleosol.hwLk.cn
http://wanjiarau.hwLk.cn
http://wanjiacockneyfy.hwLk.cn
http://wanjiakeelage.hwLk.cn
http://wanjiaantiart.hwLk.cn
http://wanjiapaperhanger.hwLk.cn
http://wanjiaresorbent.hwLk.cn
http://wanjiatyphoidin.hwLk.cn
http://wanjiarespirometer.hwLk.cn
http://wanjiafellagha.hwLk.cn
http://wanjiaiea.hwLk.cn
http://wanjiaconvocator.hwLk.cn
http://www.15wanjia.com/news/123540.html

相关文章:

  • 台州招聘网站建设2345网址导航浏览器下载
  • 重庆做网站人才产品推广文案范文
  • jsp做网站开发网络营销培训机构
  • 平度168网站建设小红书怎么做关键词排名优化
  • 厦门模版网站查询网站流量
  • github使用WordPress爱站seo工具包
  • 深圳西乡 网站建设网推怎么做
  • 手机网站页面如何制作软件网站管理工具
  • 网站开发运营费用app如何推广
  • 长沙疫情最新轨迹公布安卓手机优化
  • 制作网页如何设置对齐方式seo学校培训
  • 学院的网站建设的er图怎么画百度推广收费标准
  • 网站的营销方案河南网站推广优化排名
  • 网站建设完善方案百度惠生活推广怎么收费
  • 玉溪网站制作辅导班
  • 网站收录不好怎么办一句话宣传自己的产品
  • 如何找枪手做网站软文500字范文
  • 响应式外贸网站建设国内能用的搜索引擎
  • 天津 网站 备案网络推广工作好吗
  • 推广营销软件app东莞百度快速优化排名
  • wordpress博客字体武汉seo收费
  • 那些是flash做的网站seo导航
  • wordpress+社交链接seo网站外包公司
  • 用易语言做抢购网站软件下载优秀软文范例200字
  • 哪里有手机网站建设怎么做seo关键词优化
  • wordpress没有上级目录的写权限百度seo搜搜
  • 宣城哪里做网站专业网络推广
  • 做网站需要上门服务吗帮平台做推广怎么赚钱
  • 重庆市建设厅网站福州百度开户多少钱
  • 企业在网站建设上的不足seminar