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

湘潭网站建设湘潭一个网站建设需要多少钱

湘潭网站建设湘潭,一个网站建设需要多少钱,电影网站做seo,上海网站建设公司有多少家1、线程池的好处 第一#xff1a;降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。 第二#xff1a;提高响应速度。当任务到达时#xff0c;任务可以不需要等到线程创建就能立即执行。 第三#xff1a;提高线程的可管理性。线程是稀缺资源#x…1、线程池的好处 第一降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。 第二提高响应速度。当任务到达时任务可以不需要等到线程创建就能立即执行。 第三提高线程的可管理性。线程是稀缺资源如果无限制地创建不仅会消耗系统资源 还会降低系统的稳定性使用线程池可以进行统一分配、调优和监控。但是要做到合理利用线程池必须对其实现原理了如指掌。 2、线程池的实现原理核心线程数、阻塞队列、最大线程数、拒绝策略、过期时间 1如果当前运行的线程少于corePoolSize则创建新线程来执行任务注意执行这一步骤需要获取全局锁。 2如果运行的线程等于或多于corePoolSize则将任务加入BlockingQueue。 3如果无法将任务加入BlockingQueue队列已满则创建新的线程来处理任务注意执行这一步骤需要获取全局锁。 4如果创建新线程将使当前运行的线程超出maximumPoolSize任务将被拒绝并调RejectedExecutionHandler. rejectedExecution()方法。 5当线程处于空闲状态超过过期时间线程就会被回收 ThreadPoolExecutor采取上述步骤的总体设计思路是为了在执行execute()方法时尽可能地避免获取全局锁那将会是一个严重的可伸缩瓶颈。在ThreadPoolExecutor完成预热之后当前运行的线程数大于等于corePoolSize几乎所有的execute()方法调用都是执行步骤2而步骤2不需要获取全局锁。 3、创建一个线程池时需要输入的参数 1corePoolSize线程池的基本大小当提交一个任务到线程池时线程池会创建一个线 程来执行任务即使其他空闲的基本线程能够执行新任务也会创建线程等到需要执行的任 务数大于线程池基本大小时就不再创建。如果调用了线程池的prestartAllCoreThreads()方法 线程池会提前创建并启动所有基本线程。 2runnableTaskQueue任务队列用于保存等待执行的任务的阻塞队列。可以选择以下几个阻塞队列。 ·ArrayBlockingQueue是一个基于数组结构的有界阻塞队列此队列按FIFO先进先出原则对元素进行排序。 ·LinkedBlockingQueue一个基于链表结构的阻塞队列此队列按FIFO排序元素吞吐量通常要高于ArrayBlocking Queue。静态工厂方法Executors.newFixedThreadPool()使用了这个队列。 ·SynchronousQueue一个不存储元素的阻塞队列。每个插入操作必须等到另一个线程调用移除操作否则插入操作一直处于阻塞状态吞吐量通常要高于Linked-BlockingQueue静态工厂方法Executors.newCachedThreadPool使用了这个队列。 ·PriorityBlockingQueue一个具有优先级的无限阻塞队列。 3maximumPoolSize线程池最大数量线程池允许创建的最大线程数。如果队列满了并且已创建的线程数小于最大线程数则线程池会再创建新的线程执行任务。值得注意的是如果使用了无界的任务队列这个参数就没什么效果。 4ThreadFactory用于设置创建线程的工厂可以通过线程工厂给每个创建出来的线程设置更有意义的名字。使用开源框架guava提供的ThreadFactoryBuilder可以快速给线程池里的线程设置有意义的名字 5RejectedExecutionHandler饱和策略当队列和线程池都满了说明线程池处于饱和状态那么必须采取一种策略处理提交的新任务。这个策略默认情况下是AbortPolicy表示无法处理新任务时抛出异常。在JDK 1.5中Java线程池框架提供了以下4种策略。 ·AbortPolicy直接抛出异常。 ·CallerRunsPolicy只用调用者所在线程来运行任务。 ·DiscardOldestPolicy丢弃队列里最近的一个任务并执行当前任务。 ·DiscardPolicy不处理丢弃掉。 当然也可以根据应用场景需要来实现RejectedExecutionHandler接口自定义策略。如记录日志或持久化存储不能处理的任务。 ·keepAliveTime线程活动保持时间线程池的工作线程空闲后保持存活的时间。所以如果任务很多并且每个任务执行的时间比较短可以调大时间提高线程的利用率。 ·TimeUnit线程活动保持时间的单位可选的单位有天DAYS、小时HOURS、分钟MINUTES、毫秒MILLISECONDS、微秒MICROSECONDS千分之一毫秒和纳秒NANOSECONDS千分之一秒。
http://www.zqtcl.cn/news/280973/

相关文章:

  • 向国旗致敬做时代新人网站广州网站建设公司排名
  • 阿里云域名怎么做网站对网站进行seo优化
  • 响应式网站建设合同11月将现新冠感染高峰
  • 做网站客户一般会问什么问题百度云网盘资源分享网站
  • 网站设计中超链接怎么做艺术设计
  • 卡盟网站建设wordpress优化代码
  • 做网站需要什么技术员商城型网站开发网站建设
  • discuz做地方门户网站网站大全免费完整版
  • 莆田人做的网站一天赚2000加微信
  • 阿里云网站访问不了怎么办做网站二维码
  • 手机商城网站建设可采用的基本方式有
  • 网站备案管理做广告公司网站建设价格
  • 绵阳专业网站建设公司上海外贸公司排名榜
  • 如何做英文系统下载网站快速排名工具免费
  • 苏州建网站必去苏州聚尚网络网页视频提取在线工具
  • 网站建设服务市场分析百度集团
  • 网站怎么企业备案信息做网站业务员如何跟客户沟通
  • 如何网站推广知名的集团门户网站建设费用
  • 网站入口设计规范专门做喷涂设备的网站
  • 最简单网站开发软件有哪些企业管理培训课程培训机构
  • 桂城网站制作公司wordpress 导航网站
  • 一个公司做网站需要注意什么条件网站备案 登陆
  • 百度网站介绍显示图片装修公司一般多少钱一平方
  • 网站销售如何做业绩我找伟宏篷布我做的事ko家的网站
  • 建立网站有哪些步骤?jsp网站开发详细教程
  • 网站怎么做直播功能旅游做攻略用什么网站
  • 企业外贸营销型网站如何写好软文推广
  • 免费建站的网址个人网站建设程序设计
  • 淘宝网站建设违规吗上海大公司
  • 大淘客怎么自己做网站自己开网站能赚钱吗