什么是线程和多线程
线程是cpu的最小单位,线程不拥有系统资源,记住,一个进程包括多个线程来执行,进程才占用系统资源
多线程可以理解为一个程序中运行多个线程来执行不同的任务,可以利用这个多线程来利用cpu的多核的好处,让程序运行更快,可以充分利用cpu的资源,因为现在都是多核的cpu
java中线程的实现方式
java中实现多线程的方式有三种,继承Thread类,实现Rannable,Callable接口
线程的生命周期
从线程创建,到线程结束就是线程的生命周期。中间可能有各种状态,暂停,睡眠等
用的最多的是睡眠:Thread.sleep(long),wait(),join(),notify() notifyAll()
创建线程的执行顺序不是代码能控制的,比如下面的start
创建三个线程,但是线程的启动顺序却不是123来启动的,所以线程的启动顺序,并不是决定线程的执行顺序的
如何保证线程的顺序执行
可以使用join方法,来控制线程的顺序执行
可以看到等上面的线程执行完毕之后,才会调用下面的线程,导致线程可以顺序执行