第四章 多线程
进程是程序的一次动态执行过程。
进程的特点是:
>进程是系统运行程序的基本单位。
>每一个进程都有自己独立的一块内存空间、一组系统资源。
>每一个进程的内部数据和状态都是完全独立的。
线程是进程中执行运算的最小单位,可完成一个独立的顺序控制流程。每个进程中,至少建立一个线程(这个线程称为主线程)来作为这个程序运行的入口点。如果在一个进程中同时运行了多个线程,用来完成不同的工作,则称为“多线程”。
Java提供了java.lang.Thread类支持多线程编程
Thread常用方法
方法 | 说明 |
Thread() | 分配新的 Thread 对象。 |
Thread(Runnable target) | 分配新的 Thread 对象。target为润()方法被调用的对象 |
Thread(Runnable target, String name) | 分配新的 Thread 对象。target为润()方法被调用的对象,name为新线程的名称 |
void run() | 执行任务操作的方法 |
void start() | 使该线程开始执行,Java虚拟机调用该线程的run()方法 |
void sleep(long millis) | 在指定的毫秒数内让当前正在执行的线程休眠(暂时执行) |
String getName() | 返回线程的名称 |
int getPriority() | 返回线程的优先级 |
void setPriority() | 更改线程的优先级 |
static Thread currentThread() | 返回当前正在执行的线程对象的引用 |
boolean isAlive() | 测试线程是否处于活动状态 |
void join() | 等待该线程终止 |
void interrupt() | 中断线程 |
void yield() | 暂停当前正在执行的线程对象,并执行其他线程 |
主线程
在Java程序启动时。一个线程立刻运行,该线程通常称为程序的主线程.Java程序中的public static void main()方法是主线程的入口。每个进程都至少有一个主线程。它是程序开始时就执行的。
主线程的重要性体现在以下两个方面。
>它是产生其他子线程的线程。
>通常它必须最后完成执行。因为它执行各种关闭动作。
线程的优先级
线程的优先级用1~10表示,1表示优先级最低,10表示优先级最高,默认值是5。
线程的状态
任何线程一般都具有五种状态,即创建、就绪、运行、阻塞、死亡状态。