当前位置: 首页 > news >正文 营销型网站建设目标专门做二手的网站 news 2025/10/26 6:40:50 营销型网站建设目标,专门做二手的网站,可以做宣传图的网站,普通网站 seo 多少钱每天学习一个小知识 什么是线程池 线程池是一种多线程处理形式#xff0c;处理过程中将任务添加到队列#xff0c;然后在创建线程后自动启动这些任务。其技术的核心思想其实就是实现资源的一个复用#xff0c;避免资源的重复创建和销毁带来的性能开销。在线程池中#xf…每天学习一个小知识 什么是线程池 线程池是一种多线程处理形式处理过程中将任务添加到队列然后在创建线程后自动启动这些任务。其技术的核心思想其实就是实现资源的一个复用避免资源的重复创建和销毁带来的性能开销。在线程池中线程池可以管理一堆线程让线程执行完任务之后不会进行销毁而是继续去处理其它线程已经提交的任务。 线程池生命周期 1、新建状态NEW 当程序使用 new 关键字创建了一个线程之后该线程就处于新建状态此时仅由 JVM 为其分配内存并初始化其成员变量的值 2、就绪状态RUNNABLE 当线程对象调用了 start()方法之后该线程处于就绪状态。Java 虚拟机会为其创建方法调用栈和程序计数器等待调度运行 3、运行状态RUNNING 如果处于就绪状态的线程获得了 CPU开始执行 run()方法的线程执行体则该线程处于运行状态。 4、阻塞状态BLOCKED 阻塞状态是指线程因为某种原因让出了 cpu 使用权暂时停止运行。直到线程进入可运行(runnable)状态才有机会再次获得 cpu timeslice 转到运行(running)状态。阻塞的情况分三种 1等待阻塞wait-等待对列 运行(running)的线程执行 wait()方法JVM 会把该线程放入等待队列(waitting queue) 中。 2同步阻塞(lock-锁池) 运行(running)的线程在获取对象的同步锁时若该同步锁被别的线程占用则 JVM 会把该线程放入锁池(lock pool)中。 3其他阻塞(sleep/join) 运行(running)的线程执行 Thread.sleep(long ms)或 t.join()方法或者发出了 I/O 请求时JVM 会把该线程置为阻塞状态。当 sleep()状态超时、join()等待线程终止或者超时、或者 I/O处理完毕时线程重新转入可运行(runnable)状态。 5、线程死亡DEAD 1正常结束 run()或 call()方法执行完成线程正常结束。 2异常结束 线程抛出一个未捕获的 Exception 或 Error。 3调用 stop 直接调用该线程的 stop()方法来结束该线程—该方法通常容易导致死锁不推荐使用。 线程池工作原理 1、线程池刚创建时里面是没有线程的。任务队列是作为参数传进来的。不过就算队列里面有任务线程池也不会马上执行它们。 2、当调用 execute() 方法添加一个任务时线程池会做如下判断 1如果正在运行的线程数量小于 corePoolSize那么马上创建线程运行这个任务 2如果正在运行的线程数量大于或等于 corePoolSize那么将这个任务放入队列 3如果这时候队列满了而且正在运行的线程数量小于maximumPoolSize那么还是要创建非核心线程立刻运行这个任务 4如果队列满了而且正在运行的线程数量大于或等于 maximumPoolSize则线程池会抛出异常RejectExecutionException。 3、当一个线程完成任务时它会从队列中取下一个任务来执行。 4、当一个线程无事可做超过一定的时间keepAliveTime时线程池会判断如果当前运行的线程数大于 corePoolSize那么这个线程就被停掉。所以线程池的所有任务完成后它最终会收缩到 corePoolSize 的大小。 线程池的实现方式 1、继承 Thread 类 启动线程是通过 Thread 类的 start()实例方法。start()方法是一个 native 方法它将启动一个新线程并执行 run()方法。 2、实现 Runnable 接口 如果类已经继承了父类了那么久就不能再继承 Thread 类我们可以实现Runnable接口。无返回值 3、实现 Callable 接口 执行Callable 任务后可以获取一个 Future 的对象在该对象上调用 get 就可以获取到 Callable 任务返回的 Object 了。有返回值 线程池七大参数 1、corePoolSize 核心线程数 核心线程大小线程池中维护了一个最小线程数量即使这些线程处于空闲状态也一直存在线程池中除非设置了核心线程超时时间 2、maximumPoolSize 最大线程数 线程池中允许的最大线程数量。当线程池中核心线程都处理执行状态有新请求的任务 1、工作队列未满新请求的任务加入工作队列 2、工作队列已满线程池会创建新线程来执行这个任务。当然创建新线程不是无限制的因为会受到maximumPoolSize最大线程数量的限制。 3、keepAliveTime 最大空闲时间 空闲线程存活时间。具体说当线程数大于核心线程数时空闲线程在等待新任务到达的最大时间如果超过这个时间还没有任务请求该空闲线程就会被销毁。 4、TimeUnit unit 时间单位 空闲线程存活时间的单位。keepAliveTime的计量单位。枚举类型TimeUnit类。存活时间通常设置为 60s 左右即当线程池中的线程空闲时间超过了 60 秒那么这个线程就会被回收。同时当线程池中的线程数量小于等于核心线程池大小时存活时间将不起作用。 5、BlockingQueue workQueue 任务队列 任务队列是存储被提交但尚未被执行的任务的阻塞队列。常用的任务队列有如下几类 ArrayBlockingQueue基于数组的有限队列可以指定容量。LinkedBlockingQueue基于链表的无限队列可以无限扩展。PriorityBlockingQueue优先级队列可以自定义排列顺序。SynchronousQueue同步队列不存储数据只在提交和取出数据时传递数据。 6、ThreadFactory threadFactory 线程工厂 用来创建线程工厂的类在线程池中需要创建新线程时使用 threadFactory创建线程工厂 进行创建线程对象可以通过自定义 threadFactory创建线程工厂对线程进行个性化配置和定制例如设置线程的名称、优先级等可以更好的跟踪和管理线程池中的线程 7、RejectedExecutionHandler handler 拒绝策略 拒绝策略是当任务队列满了需要执行拒绝策略来处理新提交的任务。提供了几种预定义的拒绝策略 AbortPolicy直接抛出异常默认策略。CallerRunsPolicy主线程执行该任务。DiscardOldestPolicy丢弃队列中最老的任务然后重新尝试执行当前任务。DiscardPolicy默默丢弃提交的任务没有异常。 线程池及线程池大小调优技巧 1、核心线程池数量调优 核心线程池数量不宜过多因为每个线程都需要占用内存和 CPU 资源过多的核心线程池数量会导致系统资源的浪费从而降低系统性能。但也不应过少否则会降低系统吞吐量。 2、最大线程池数量调优 最大线程池数量一般设置最大线程池数量 CPU 核心数 网络连接数 其他 IO 等待时间的线程数量 3、存活时间调优 设定一个适当的线程存活时间可以有效地减少线程的创建和销毁带来的性能开销。在存活时间到达之后多余的线程会被回收从而释放系统资源。 4、队列调优 任务队列是存储被提交但尚未被执行的任务的阻塞队列。在选择队列类型时应考虑任务数量和任务类型以及需要处理的并发请求数。常用的阻塞队列有 ArrayBlockingQueue 和 LinkedBlockingQueue。 5、拒绝策略调优 拒绝策略通常分为四种AbortPolicy、CallerRunsPolicy、DiscardOldestPolicy 和 DiscardPolicy。根据业务需求和系统负载情况选择合适的拒绝策略。 应用场景 1、CPU 密集型应用线程池设置 在 CPU 密集型应用中任务主要是 CPU 计算线程池的大小应该根据 CPU 核心数来设置以充分利用 CPU 资源并避免过多线程间的竞争和上下文切换。通常情况下将核心线程池大小设置为 CPU 核心数将最大线程池大小设置为 CPU 核心数 * 2。比如当前服务器有 8 核 CPU那么推荐设置核心线程池大小为 8最大线程池大小为 16。 2、IO 密集型应用线程池设置 在 IO 密集型应用中任务主要是从事 IO 等待而线程的 CPU 计算能力却很小此时线程数量适当多一点可以让 CPU 等待 IO 的数目更多以充分利用计算机的硬件资源。通常情况下核心线程池大小可以设置为 CPU 核心数 1最大线程池大小可以设置为 CPU 核心数 * 2。同时建议使用无界的 LinkedBlockingQueue 阻塞队列以避免丢失任务。 3、其它应用场景 对于各种不同的场景应该根据实际情况进行参数的设置。比如生产者-消费者问题可以使用 FixedThreadPool保证消费者线程数量少于核心线程池大小以确保消费者线程能够及时执行。同时阻塞队列也可以根据实际情况选择不同的存储方式。对于需要开多个线程处理的应用可以使用 ScheduledThreadPoolExecutor定时执行任务。总之根据实际需求来设置线程池的参数是最重要的。 文章转载自: http://www.morning.ndxss.cn.gov.cn.ndxss.cn http://www.morning.ruifund.com.gov.cn.ruifund.com http://www.morning.jzgxp.cn.gov.cn.jzgxp.cn http://www.morning.rkzk.cn.gov.cn.rkzk.cn http://www.morning.qwwhs.cn.gov.cn.qwwhs.cn http://www.morning.kjsft.cn.gov.cn.kjsft.cn http://www.morning.sqtsl.cn.gov.cn.sqtsl.cn http://www.morning.kqpsj.cn.gov.cn.kqpsj.cn http://www.morning.lphtm.cn.gov.cn.lphtm.cn http://www.morning.bsrqy.cn.gov.cn.bsrqy.cn http://www.morning.wkcl.cn.gov.cn.wkcl.cn http://www.morning.gslz.com.cn.gov.cn.gslz.com.cn http://www.morning.dqpnd.cn.gov.cn.dqpnd.cn http://www.morning.xhpnp.cn.gov.cn.xhpnp.cn http://www.morning.gwjsm.cn.gov.cn.gwjsm.cn http://www.morning.dpruuode.cn.gov.cn.dpruuode.cn http://www.morning.txlxr.cn.gov.cn.txlxr.cn http://www.morning.hhkzl.cn.gov.cn.hhkzl.cn http://www.morning.lmdkn.cn.gov.cn.lmdkn.cn http://www.morning.wpcfm.cn.gov.cn.wpcfm.cn http://www.morning.lekbiao.com.gov.cn.lekbiao.com http://www.morning.sgpny.cn.gov.cn.sgpny.cn http://www.morning.rbbgh.cn.gov.cn.rbbgh.cn http://www.morning.jqkjr.cn.gov.cn.jqkjr.cn http://www.morning.lbcbq.cn.gov.cn.lbcbq.cn http://www.morning.llcsd.cn.gov.cn.llcsd.cn http://www.morning.pftjj.cn.gov.cn.pftjj.cn http://www.morning.htsrm.cn.gov.cn.htsrm.cn http://www.morning.zkzjm.cn.gov.cn.zkzjm.cn http://www.morning.kfcfq.cn.gov.cn.kfcfq.cn http://www.morning.zsfooo.com.gov.cn.zsfooo.com http://www.morning.rnfwx.cn.gov.cn.rnfwx.cn http://www.morning.ldgqh.cn.gov.cn.ldgqh.cn http://www.morning.fbdtd.cn.gov.cn.fbdtd.cn http://www.morning.dxpzt.cn.gov.cn.dxpzt.cn http://www.morning.tgmwy.cn.gov.cn.tgmwy.cn http://www.morning.mmynk.cn.gov.cn.mmynk.cn http://www.morning.wrqw.cn.gov.cn.wrqw.cn http://www.morning.wplbs.cn.gov.cn.wplbs.cn http://www.morning.mxmtt.cn.gov.cn.mxmtt.cn http://www.morning.rgxn.cn.gov.cn.rgxn.cn http://www.morning.qkrz.cn.gov.cn.qkrz.cn http://www.morning.mkkcr.cn.gov.cn.mkkcr.cn http://www.morning.bnpn.cn.gov.cn.bnpn.cn http://www.morning.ydxg.cn.gov.cn.ydxg.cn http://www.morning.lthpr.cn.gov.cn.lthpr.cn http://www.morning.ssxlt.cn.gov.cn.ssxlt.cn http://www.morning.qfnrx.cn.gov.cn.qfnrx.cn http://www.morning.tgyqq.cn.gov.cn.tgyqq.cn http://www.morning.jsxrm.cn.gov.cn.jsxrm.cn http://www.morning.dydqh.cn.gov.cn.dydqh.cn http://www.morning.sgbk.cn.gov.cn.sgbk.cn http://www.morning.wyzby.cn.gov.cn.wyzby.cn http://www.morning.ylklr.cn.gov.cn.ylklr.cn http://www.morning.nmlpp.cn.gov.cn.nmlpp.cn http://www.morning.fyglg.cn.gov.cn.fyglg.cn http://www.morning.wiitw.com.gov.cn.wiitw.com http://www.morning.dfffm.cn.gov.cn.dfffm.cn http://www.morning.mlcnh.cn.gov.cn.mlcnh.cn http://www.morning.rshkh.cn.gov.cn.rshkh.cn http://www.morning.mtsgx.cn.gov.cn.mtsgx.cn http://www.morning.xkjqg.cn.gov.cn.xkjqg.cn http://www.morning.knpbr.cn.gov.cn.knpbr.cn http://www.morning.newfeiya.com.cn.gov.cn.newfeiya.com.cn http://www.morning.lbxhy.cn.gov.cn.lbxhy.cn http://www.morning.qqrlz.cn.gov.cn.qqrlz.cn http://www.morning.qysnd.cn.gov.cn.qysnd.cn http://www.morning.nzqqd.cn.gov.cn.nzqqd.cn http://www.morning.bslkt.cn.gov.cn.bslkt.cn http://www.morning.svtxeu.com.gov.cn.svtxeu.com http://www.morning.mmqng.cn.gov.cn.mmqng.cn http://www.morning.rknhd.cn.gov.cn.rknhd.cn http://www.morning.wzknt.cn.gov.cn.wzknt.cn http://www.morning.xphls.cn.gov.cn.xphls.cn http://www.morning.kryr.cn.gov.cn.kryr.cn http://www.morning.fplwz.cn.gov.cn.fplwz.cn http://www.morning.byjwl.cn.gov.cn.byjwl.cn http://www.morning.rfpxq.cn.gov.cn.rfpxq.cn http://www.morning.ryrgx.cn.gov.cn.ryrgx.cn http://www.morning.rtpw.cn.gov.cn.rtpw.cn 查看全文 http://www.tj-hxxt.cn/news/250306.html 相关文章: 深圳专业营销网站设计北京网站制作设计 免费网络短剧网站ui培训哪家机构 营销型网站九大特点安装wordpress视频教程 企业网站建设方案有那些网页设计期末作品主题 手机网站建设的整体流程图wordpress怎么改模板 震旦网站谁做的郑州商城网站建设 合作网站账号登录方式嘉兴网站推广排名 有没有介绍做私家导游的网站网站登录接口怎么做 公司管理系统网站模板下载o2o网站建设平台 php网站开发环境说明网站开发需要解决的问题 大型网站建设价格wordpress安卓版怎么用 如何直接用jsp做网站不写servletwordpress 插件国际化 手机兼职在哪个网站做标志设计公司成都 莱州网站建设费用建设小学瓯江小区网站 潍坊程序设计网站建设公司营销设计网站建设 濮阳 网站建设网站开发技术的发展流程 佛山网站建设冯哥企业官方网站开发平台 石家庄做网站多少钱做网站 聊城 正规网站开发流程网站建设新手教程视频 龙湖地产 网站建设青岛网站建设迅优 售后服务网站网络域名怎么设置 东莞建设网官方网站首页广州网站运营十年乐云seo 深圳如何优化网站wordpress 添加二级 淘宝客如何做淘宝客网站推广电商软件开发公司 贵阳做网站做得好的观澜小学网站建设 pc网站怎么做适配网站建设的可行性研究的前提 运城手机网站建设建站公司哪个好 西安网站建设开发公司怎么建立国外网站 奇人网站商务网站建设实验 移动营销做手机网站湘潭网站开发公司