什么是进程
每一个程序有一个独立的进程
什么是线程
进程要执行任务必须要通过线程,线程就是进程的最小执行单元
什么是线程安全
我们要确保在多个线程进行访问的情况下,确保程序正确执行
创建线程的两种方法
//第一种通过继承类来实现
public MyThread extends Thread{
@Override
public void run(){
//执行的任务
}
}
//2.通过实现Runnable接口来实现
public MyThread implements Runnable{
@Override
public void run(){
//执行的任务
}
}
publicstatic void main(){
MyThread th=new MyThread();
Thread t1=new Thread(th,"线程");
t1.start();
}
线程的sleep,wait,join,yield方法
sleep方法:
执行这个线程进入阻塞,并且不释放锁,线程醒来后重新进入就绪状态
wait方法:
线程执行这个方法后,进入堵塞状态,并且释放锁,重新唤醒需要notify()方法,当有多个wait线程随机唤醒一个,注意这个方法为Object类中的
join方法:
先执行调用方法的线程内容,在执行接下来的内容
yield方法:
执行此方法的线程退回就绪状态,执行同优先级或高优先级的线程
线程的生命周期
线程分为五个周期:新建,就绪,执行,死亡,堵塞