多线程
Amelia_Liu
这世上有三样东西是别人抢不走的:一是吃进胃里的食物,二是藏在心中的梦想,三是读进大脑的书。
展开
-
线程池
为什么用线程池 创建/销毁线程伴随着系统开销,过于频繁的创建/销毁线程,会很大程度上影响处理效率 例如: 记创建线程消耗时间T1,执行任务消耗时间T2,销毁线程消耗时间T3 如果T1+T3>T2,那么是不是说开启一个线程来执行这个任务太不划算了! 正好,线程池缓存线程,可用已有的闲置线程来执行新任务,避免了T1+T3带来的系统开销 线程并发数量过多,抢...转载 2018-08-30 17:11:29 · 94 阅读 · 0 评论 -
Java 里如何实现线程间通信
正常情况下,每个子线程完成各自的任务就可以结束了。不过有的时候,我们希望多个线程协同工作来完成某个任务,这时就涉及到了线程间通信了。本文涉及到的知识点:thread.join(), object.wait(), object.notify(), CountdownLatch, CyclicBarrier, FutureTask, Callable 等。本文涉及代码:https://gi...转载 2018-08-30 18:28:53 · 232 阅读 · 0 评论 -
多线程返回值
Java5新增了Callable接口获得线程的返回值实现Callable接口import java.util.concurrent.Callable;public class MyThread2 implements Callable<String> {@Overridepublic String call() throws Exception {Stri...原创 2018-08-29 16:53:50 · 263 阅读 · 0 评论 -
线程池
线程池1、线程池,其实就是一个容纳多个线程的容器,其中的线程可以反复使用,省去了频繁创建线程对象的操作,无需反复创建线程而消耗过多资源。(是什么)2、那么,我们为什么需要用到线程池呢?每次用的时候手动创建不行吗?在java中,如果每个请求到达就创建一个新线程,开销是相当大的。在实际使用中,创建和销毁线程花费的时间和消耗的系统资源都相当大,甚至可能要比在处理实际的用户请求的时间和资源要多...原创 2018-08-30 14:39:45 · 116 阅读 · 0 评论