理解线程的概念
掌握线程的创建和启动
了解线程的状态
掌握线程调度的常用方法
掌握线程的同步
理解线程安全的类型
主线程
继承Thread创建线程
Runnable接口创建线程
推荐使用实现Runnable接口方式创建线程
注意:调用run方法并不能启动线程,他只是单纯地调用了方法而已
线程的状态
线程调度的方法
方 法 | 说 明 |
void setPriority(int newPriority) | 更改线程的优先级 |
static void sleep(long millis) | 在指定的毫秒数内让当前正在执行的线程休眠 |
void join() | 等待该线程终止 |
static void yield() | 暂停当前正在执行的线程对象,并执行其他线程 |
void interrupt() | 中断线程 |
boolean isAlive() | 测试线程是否处于活动状态 |
多线程共享数据引发的问题(线程同步)
同步方法
多个并发线程访问同一资源的同步代码块时
同一时刻只能有一个线程进入synchronized(this)同步代码块
当一个线程访问一个synchronized(this)同步代码块时,其他synchronized(this)同步代码块同样被锁定
当一个线程访问一个synchronized(this)同步代码块时,其他线程可以访问该资源的非synchronized(this)同步代码