一.多线程方法:
第一种形式:Thread
1. main线程和run一起抢夺cpu的执行权里谁抢到谁执行。
多线程的内存图解:
调用run方法会压栈,调用start方法会开辟新的栈空间。再调用在开辟。
cpu就有选择的权力。
2.Thread中的常用方法:
获取线程名称:
main方法去调用:
不同的线程名字:
另一种获取线程方式:
currentThread()
属于静态方法可以直接调用。
打印结果:
两种方法一起搞:
打印结果:
三行代码搞成一行,链式编程:
改完之后 设置线程的名称:
1.继承重写run
main
第二种;
sleep:
设置为一秒钟打印一次 。静态方法直接调用。
二:创建线程方式的第二种:runnable
1.
2.
打印结果main和run互相争夺;
三.Thread 和Runnable的区别:
传递不同的实现类,实现不同的任务