java之并发

时间:2021-11-27 04:54:05

一、线程

在java中多线程执行任务,主要有两种方式,一种是通过继承Thread类,重写run方法,优点是比较方便的创建一个线程,缺点是java中每个类只能有一个基类,所有继承了T火热ad类后,就不能再继承其他类了;第二种是实现Runnable接口,实现接口中的run方法,然后把类的对象交给Thread构造器,或者添加到执行器Executor中。

 class MyThread extends Thread {
public void run() {
while(!Thread.interrupted()) {
System.out.println(this);
}
}
} class MyTask implements Runnable {
public void run() {
while (!Thread.interrupted()) {
int x = 0;
for (int i = 0; i < 1000000; ++i) {
x += 5*i;
}
}
}
} public class InterruptTest { public static void main(String[] args) {
// TODO Auto-generated method stub
Thread t = new Thread(new MyTask());
t.start();
t.interrupt(); MyThread t2 = new MyThread();
t2.start();
}
}