先上代码,通过代码加图的方式来解说
public class Main { public static void main(String[] args) { MyThread myThread = new MyThread("one"); myThread.start(); int i=20; for (int i1 = i; i1 > 0; i1--) { System.out.println("主线程:"+i1); } } } **public class MyThread extends java.lang.Thread{ public MyThread(String name) { super(name); } @Override public void run() { int i=20; for (int i1 = 0; i1 < i; i1++) { System.out.println("辅线程"+i1); } } }**
运行结果
可以看到main()方法的线程和MyThread中的线程交替执行
上图
程序启动运行main的时候,java虚拟机启动一个进程,主线程main在main()被调用的时候被创建使用 myThread.start() 的时候,另外一个线程叶启动了,整个线程就在多线程的下运行
以上就是java多线程的原理与相关图解,如有错误还请各位批评指正
原文链接:https://www.cnblogs.com/pjhaymy/p/13323535.html