java线程的基本概念&&生命周期

来源:互联网 发布:威纳数据注册码 编辑:程序博客网 时间:2024/05/17 22:03
(一)线程的基本概念:


(1)进程与线程:
进程:运行中的应用程序称为进程,拥有系统资源(cpu、内存)
线程:进程中的一段代码,一个进程中可以有多段代码。本身不拥有资源(共享所在进程的资源)


(2)区分进程与线程:
 1、是否占有资源问题
 2、创建或撤销一个进程所需要的开销比创建或撤销一个线程所需要的开销大。
 3、进程为重量级组件,线程为轻量级组件


(3)多线程与多进程:
多进程: 在操作系统中能同时运行多个任务(程序)。
多线程: 在同一应用程序中有多个功能流同时执行。


(4)线程的用途:
①、利用它可以完成重复性的工作(如实现动画、声音等的播放)。
②、从事一次性较费时的初始化工作(如网络连接、声音数据文件的加载)。
③、并发执行的运行效果(一个进程多个线程)以实现更复杂的功能。


(5)多线程的优点:
①、可以减轻系统性能方面的瓶颈,因为可以并行操作;
②、提高CPU的处理器的效率,在多线程中,通过优先级管理,可以使重要的程序优先操作,提高了任务管理的灵活性;另一方面,在多CPU系统中,可以把不同的线程在不同的CPU中执行,真正做到同时处理多任务。


(6)线程的主要特点:
1)不能以一个文件名的方式独立存在在磁盘中;
2)不能单独执行,只有在进程启动后才可启动;
3)线程可以共享进程相同的内存(代码与数据)。


(7)线程的优先级:
每一个Java线程都有一个优先级,这样有助于操作系统确定线程的调度顺序。Java优先级在MIN_PRIORITY(1)和MAX_PRIORITY(10)之间的范围内。默认情况下,每一个线程都会分配一个优先级NORM_PRIORITY(5)。


(二)java线程的生命周期/状态转换图:




0 0
原创粉丝点击