对于面试官提问的 线程池原理 该怎么回答呢?

看了博客觉的还是抽象,不知道从哪里答起.......
全部评论
1、接收到任务 2、判断已存在线程数是否大于等于核心线程数,如果不是,则创建新线程执行任务;否则转3 3、判断任务队列是否有界,如果不是,将任务加入队列中;否则转4 4、判断任务队列是否已满,如果不是,将任务加入队列中;否则转5 5、判断已存在线程数是否等于最大线程数,如果不是,则创建新线程执行任务;否则转6 6、拒绝该任务 按照上面的画一个流程图就明白了
点赞 回复 分享
发布于 2016-09-20 10:37
哈哈我最擅长的,生怕面试官不问这个
点赞 回复 分享
发布于 2016-09-20 10:52
主要说过程和核心参数  大概就是 : 默认情况,线程数为0, 此时来请求,则线程池new一个线程来执行, 如果 请求数大于了核心数值,根据参数来选择是否继续new线程,   直到线程数等于最大线程值; 此时在来任务,则压入到等待队列中,当等待队列满时,此时在来任务则会直接放弃;   当压力没有那么大时,线程池会回收线程数量直到 核心数 或者根据配置参数 可以达到0 corePoolSize: 核心池大小,默认情况下线程不会超过核心大小。 maximumPoolSize: 最大线程数, 当达到一定负载时,线程数会超过核心数,但始终小于最大线程数. 当负载较轻会回收线程至核心池数量 keepAliveTime: 表示线程没有任务执行时,的存活时间. 默认情况,当线程数大于核心小于最大数量时才会启用; 如果调用allowCoreThreadTimeOut(boolean)方法,线程数下界为0 unit:keepAliveTime的时间单位 workQueue: 阻塞队列,用来存储等待执行的任务。 一般很少使用abq和pbq,多用lbq和synchronousQueue.队列. abq: arrayBlockingQueue队列,基于数组的先进先出,创建时必须指定大小 pbq: PriorityBlockingQueue 优先级队列 lbq: linkedBlockingQueue,基于链表的队列,默认长度为Integer.MAX_VALUE synchronousQueue: 不保存任务,直接创建新线程 threadFactory:线程工厂 handler: 对拒绝任务的处理策略,四种参数. abortPolicy(丢弃任务并抛异常),discardPolicy(丢弃任务不抛异常),DiscardOldestPolicy(丢弃最前面的任务),callerRunsPolicy(交由调用线程处理) 线程池构造函数: 实际都是指向最后一个构造函数; workers: 工作集 allowCoreThreadTimeOut: 是否允许核心线程设置存活时间 poolSize: 线程池中当前线程数 largestPoolSize: 记录曾经出现过的最大线程数 completedTaskCount: 记录已经执行完的任务数
点赞 回复 分享
发布于 2016-09-20 10:38
一句话概括就是为了让线程可以复用,执行完任务不销毁而是执行另一个任务,在高并发情况下能够节约资源
点赞 回复 分享
发布于 2016-09-20 10:29
正好总结过一个流程图,但是并不能发图的样子…
点赞 回复 分享
发布于 2016-09-20 10:31
看下源码怎么实现的不就可以了吗
点赞 回复 分享
发布于 2016-09-20 10:31
哪家公司?
点赞 回复 分享
发布于 2016-09-20 10:23

相关推荐

压力很大,面试官全程高压,问的问题不难,但是没有任何反馈,很慌张,也无算法。实习问了20分钟,一直问我你们做的有什么用,总时长一小时1.学校都有什么课程2.spring的ioc原理以及优点3.除了解耦还知道什么?4.springboot与spring区别,二者的源码看过没?Tomcat了解嘛?有没有具体看过5.spring的bean,面试官一直在重复一个思想问我懂不懂,完全没听过6.mybatis是干什么的?ibatis用过没?平常怎么写SQL?完全不写嘛?7.设计一个分布式双十一秒杀系统(前端,网关,缓存,数据库防超卖全设计)8.怎么做限流9.缓存与数据库一致性,你做异步要用户等你嘛?10.负载均衡怎么做11.多数据中心还是单数据中心,如果出现没卖完怎么做(到这完全不会了,面试官直接说换个话题吧)12.平常读书吗?13.上过哲学课嘛?14.兴趣爱好有没有15.对ai的看法16.来深圳有问题嘛?17.为什么不考研18.上大学带给了你什么?你提升在哪里,有没有具体的例子?反问:1.现在手机都有应用市场,应用宝怎么盈利?除了手机应用市场还是有人用,现在在做跨端,微软都有合作,之后会进军mac,主要做游戏,腾讯本身就是游戏大户。2.面试表现?整体评价一下会给到反馈。面完直接变HR面,今天HR面后,已经转为录用评估了,来牛客许个愿,暑期现在还没什么面试,希望能拿个offer之后再考虑要不要留在手子吧。
nunuking:三面压力这么大吗,面试的会议约了多长时间呀
面试问题记录
点赞 评论 收藏
分享
评论
点赞
26
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务