摘要: 所以,FutureTask既可以由Executor来调度执行,也可以由调度线程调用FutureTask.run()直接执行。 FutureTask是通过AQS的模板设计模式来实现阻塞get方法的。 从get方法整个流程可以看出: FutureTask维护一个等待线程队列waiters,如果task还 阅读全文
posted @ 2018-07-11 09:48 开心的鱼a1 阅读(319) 评论(0) 推荐(0) 编辑
摘要: 补充threadLocal内存泄露问题 threadLocal总结:1.为什么会泄露:,由于ThreadLocalMap的生命周期跟Thread一样长,在Thread周期内 ,ThreadLocalMap 中key,value对象只增不减,如果都没有手动删除对应key,都会导致内存泄漏,但是jvm提 阅读全文
posted @ 2018-07-10 13:29 开心的鱼a1 阅读(578) 评论(0) 推荐(0) 编辑
摘要: ThreadPoolExecutor构造函数的各个参数说明 public ThreadPoolExecutor(int corePoolSize,//线程池中核心线程数 int maximumPoolSize,//允许的最大线程数 long keepAliveTime,//线程空闲下来后,存活的时间 阅读全文
posted @ 2018-07-02 15:53 开心的鱼a1 阅读(2001) 评论(0) 推荐(0) 编辑