关于多线程。
1、Thread.join();
线程插队,强制执行。
会使主线程阻塞
public class test02 {
public static void main(String[] args) throws InterruptedException {
myYield n= new myYield();
Thread thread = new Thread(n);
thread.start();
//new Thread(n).start();
for (int j=0;j<111;j++){
if(j==30)
thread.join();
System.out.println("主线程: "+j);
}
}
}
class myYield implements Runnable{
@Override
public void run() {
for (int i=0;i<100;i++){
System.out.println("vip:"+i);
}
}
}
2、线程状态观测
可通过 Thread.getstate()获取线程的状态
线程的优先级:可定义线程的优先级。大多数时候,优先级高的线程先跑。
先设置优先级,再开启线程。
Thread.getProiority()
3、守护线程
设置守护线程。当父进程结束后,守护线程也就结束了。
线程分守护线程和用户线程。
虚拟机必须确保用户线程执行完毕,不用等待守护线程执行完毕。
Thread.setDaemon(), //设置为守护线程