
多线程
文章平均质量分 97
多线程的一些面试基础知识
沙糖橘
广积粮—筑高墙—缓称王
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
【多线程】多线程的“前世”,“今生”与“未来”
进程与线程的区别、创建线程的4种方法、Thread类详解、Runnable接口、Callable接口、Future接口、线程的核心原理 1.线程的调度与时间片 2.线程的优先级 3.线程的生命周期 4.Jstack工具查看线程状态 四、线程的基本操作 1.线程名称的设置和获取 2.线程休眠:sleep 3.线程中断:interrupt 4.线程合并:join 5.线程让步:yield 6.守护线程:daemon 7.线程状态总结 五、线程池原理与实战 六、确定线程池的线程数原创 2022-03-26 12:50:19 · 1658 阅读 · 0 评论 -
【多线程】线程池ThreadPoolExecutor(全面详解)
线程池原理与实战、JUC的线程池架构、Executors的4种快捷创建线程池的方法、ThreadPoolExecutor原创 2022-03-26 12:40:57 · 2570 阅读 · 0 评论 -
自定义线程池:ThreadPoolExecutor
自定义线程池,可以用ThreadPoolExecutor类创建,它有多个构造方法来创建线程池,用该类很容易实现自定义的线程池 示例程序: public class ThreadPoolTest{ public static void main(String[] args){ //创建等待队列 BlockingQueue<Runnable> bqueue = new ArrayBlockingQueue<Runnable>...转载 2020-06-05 15:32:16 · 868 阅读 · 0 评论 -
并发编程:Executor、Executors、ExecutorService
并发编程:Executor、Executors、ExecutorService 在Java 5之后引入Executor框架使用了新的启动、调度和管理线程的API, 其内部使用了线程池机制,它在java.util.cocurrent 包下,通过该框架来控制线程的启动、执行和关闭,可以简化并发编程的操作。因此,在Java 5之后,通过Executor来启动线程比使用Thread的start方法更好,除了更易管理,效率更好(用线程池实现,节约开销)外,还有关键的一点:有助于避免this逃逸问题——如果我..转载 2020-06-05 15:21:38 · 247 阅读 · 0 评论 -
线程池:newCachedThreadPool、newFixedThreadPool、newSingleThreadExecutor、newScheduleThreadPool
1.newCachedThreadPool 缓存型线程池,当提交一个线程任务先查看线程池中有没有以前建立的线程,如果有,就重复使用.如果没有,就建一个新的线程加入池中,池中线程超过TIMEOUT(TIMEOUT默认是60s)不活动,其会自动被终止移出池; 优点:可灵活的回收空闲线程。 缺点: 大量线程同时运行时,会造成系统瘫痪。 应用场景:缓存型线程池通常用于执行一些生存期很短的异步型任务。 2.newFixedThreadPool 指定工作线程数量的...原创 2020-06-05 14:08:58 · 1735 阅读 · 0 评论 -
创建多线程的三种方式和区别
方式一:继承Thread类 1.自定义一个类继承Thread类; 2.重写Thread类中的run方法(自定义线程的任务代码就放在run方法里); 3.创建Thread子类的对象,并且调用start方法开启线程,(run方法不能直接调用) 示例: class Demo extends Thread{ public void run(){ //重写run方法 for(int i=0;i<100;i++){ Sy...原创 2020-06-04 14:33:19 · 515 阅读 · 0 评论