java 多线程

时间:2023-03-10 04:14:01
java 多线程

1、继承Thread类实现多线程
继承Thread类的方法尽管被我列为一种多线程实现方式,但Thread本质上也是实现了Runnable接口的一个实例,它代表一个线程的实例,并且,启动线程的唯一方法就是通过Thread类的start()实例方法。start()方法是一个native方法,它将启动一个新线程,并执行run()方法。这种方式实现多线程很简单,通过自己的类直接extend Thread,并复写run()方法,就可以启动新线程并执行自己定义的run()方法。例如:

public class MyThread extends Thread {  

  private String name;


  Trans(String name) {
  this.name = name;
  }

  @Override
  public void run() {
   for(int i=0;i<10;i++)
  {
    System.out.println(name+"  "+i);
  }
  }
}

在mian方法里启动

 MyThread myThread1 = new MyThread("张三");
MyThread myThread2 = new MyThread("李四");
Thread dd=new Thread(myThread1);
Thread ds=new Thread(myThread2);
dd.start();
ds.start();

还有一个方法睡眠!

这是一个类

 public class Trans extends Thread {
private String name; Trans(String name) {
this.name = name;
}
@Override
public void run() {
for (int i = 0; i < 100; i++) { try {
if ((i)%10==0) {
System.out.println("-----------------"+i);
}
Thread.sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println(name+" "+i+"秒");
} } }

接下来是main方法调用

 public static void main(String[] args) {
Trans dsTrans=new Trans("程序暂停0.5秒");
Thread ds=new Thread(dsTrans);
ds.start();
}