目录
线程基本概述
线程的概念:线程是进程当中的⼀条执⾏流程
特点:
(1)同⼀个进程内多个线程之间可以共享代码段、数据段、打开的⽂件等资源
(2)每个线程各⾃都有⼀套独⽴的寄存器和栈,这样可以确保线程的控制流是相对独⽴的
线程的优缺点
优点:
(1)⼀个进程中可以同时存在多个线程
(2)各个线程之间可以并发执⾏
(3)各个线程之间可以共享地址空间和⽂件等资源
缺点:当进程中的⼀个线程崩溃时,会导致其所属进程的所有线程崩溃
比较线程与进程
(1)进程是资源分配的单位
线程是CPU调度的单位
(2)进程拥有一个完整的资源平台
线程只独享必不可少的资源
(3)线程与进程都具有创建,就绪,阻塞,执行,终止五种状态
注意区分java中线程的状态:
Java线程有六个状态:
①NEW(新建)
②RUNNABLE(可运行)——>在java中不区分Ready(就绪)和Running(运行)
③BLOCKED(阻塞)
④WAITING(等待)
⑤TIMED_WAITING(指定时间的等待)
⑥TERMINATED(终止)
线程相比进程能减少开销:
时间上:
(1)线程的创建时间⽐进程快
原因:进程在创建的过程中,还需要资源管理信息,⽐如内存管理信息、⽂件管理信息,⽽线程在创建的过程中,不会涉及这些资源管理信息,⽽是共享它们
(2ÿ