- 进程与线程的区别
进程:是代码在数据集上的一次运行活动,资源分配的单位
线程:一个进程可以有多个线程,线程是CPU分配的基本单位,即调度的基本单位
相关JVM模型:
线程共享:堆、方法区、本地方法栈
线程独有:虚拟机栈、程序计数器(程序计数器记录了每个线程在执行中断时,即CPU时间片用完时的执行地址) - Java线程创建的三种方式及它们的优缺点
(1)继承Thread类:
优点:方便传参,可以在子类里面添加成员变量,通过set方法设置参数或者通过构造函数进行传递
缺点:只能单继承;任务与代码没有分离,当多个线程想要执行相同的任务时需要多份任务代码
(2)实现Runnable接口:
优点:可以在实现Runnable接口的同时实现多个其它接口,也可以继承其它类;实现了任务代码逻辑共享
(3)使用FutureTask方式:
优点:有返回值,可以通过FutureTask实例的get()方法获得返回值 - 关于线程池好的博文
线程池ThreadPoolExecutor与阻塞队列BlockingQueue应用
Java多线程
最新推荐文章于 2023-08-15 10:16:02 发布