132-多线程-程序、进程、线程与并行、并发的概念_哔哩哔哩_bilibili
1.概念
2.共享内容
只有线程间能通信,进程之间不共享内容。
3.继承thread的多线程
相当于golang里先写一个线程函数run(),子类对象调用start()相当于go关键字
相当于go run()
package thread;
//继承并且重写run
class PrintNumber extends Thread{
@Override
public void run() {
for(int i=1;i < 100;i++){
if(i%2==0){
System.out.println(i);
}
}
}
}
//多线程
//创建对象调用start()
public class EvenNumTest{
public static void main(String[] args) {
PrintNumber printNumber = new PrintNumber();
printNumber.start();
PrintNumber printNumber1 = new PrintNumber();
printNumber1.start();
for(int i=1;i < 100;i++){
if(i%2==0){
System.out.println(i + "aaa");
}
}
}
}
tips:不能直接调用run(),必须start(),直接调run()是单线程,start()里实现了多线程
4.实现runnable接口来多线程
前面都一样,因为你没法写start()方法,所以把你写的类赋给thread,然后用thread实例start()开启线程
5.常用函数
5.1构造器
对于指定线程名的线程
5.2功能函数
6.生命周期
jdk5.0之前
jdk5.0之后