线程初步

来源:互联网 发布:linux ftp命令用法 编辑:程序博客网 时间:2024/05/19 02:30

理解并发和方法调用的区别:

方法的调用就像是排队,只有在其他方法调用完之后主方法才执行完(并不是同时执行);

然而通过run()方法和start()方法才不会有所谓调用的效果出现(程序也就能够并发执行)

代码:

/** * 第一种方法 * @author LiZhuo * */public class MyThread extends Thread{//线程类//线程体@Overridepublic void run() {try {Thread.sleep(3000);//休眠3秒} catch (InterruptedException e) {e.printStackTrace();}//线程被中断System.out.println("线程体"+Thread.currentThread().getName());}//currentThread//getName()返回线程的名称public static void main(String[] args) {System.out.println(Thread.currentThread().getName()+"主线程开始");MyThread myth1=new MyThread();//创建线程对象 子线程MyThread myth2=new MyThread();//myth1.run();//方法的调用(不能实现并发现象)//启用线程(start)使该线程开始执行;Java 虚拟机调用该线程的 run方法myth1.start();myth2.start();System.out.println("主线程结束");//互不干扰(实现并发的效果)}}

效果:

main主线程开始
主线程结束

(三秒后输出)
线程体Thread-1
线程体Thread-0


 

原创粉丝点击