*多线程
1.多线程
程序: 是为了完成特定任务,用某种语言编写的一组指令的集合,即指一段静态的代码。
进程:每个独立执行的程序称为进程,在操作系统中**进程**是进行系统资源分配、
调度和管理的最小单位,进程在执行过程中拥有独立的内存单元。
线程: 同一时刻,多个任务并发执行,构成多线程。线程是CPU调度和分派的基本单位。
注意:多线程本质上不是多个线程并行执行,只是CPU分配给每个线程的实现片段极小,
肉眼根本分辨不出,好似同一时刻CPU同时处理多个任务。
2.多线程实现
-继承Thread类
-实现Runnable接口:多个线程共享同一资源时
-实现Callable接口
-通过线程池实现
3.多线程生命周期
long getId()
返回此线程的标识符。
String getName()
返回此线程的名称。
static Thread currentThread()
返回对当前正在执行的线程对象的引用。
void setPriority(int newPriority)
更改此线程的优先级。
void join()
等待这个线程死亡。
static void sleep(long millis)
使当前正在执行的线程以指定的毫秒数暂停(暂时停止执行),具体取决于系统定时器和调度程序的精度和准确性。
static void yield() 对调度程序的一个暗示,即当前线程愿意产生当前使用的处理器。
void interrupt()
中断这个线程。
4.线程安全