import java.util.concurrent.*;
//回顾总结线程的创建
public class testNew {
public static void main(String[] args) throws ExecutionException, InterruptedException {
//方式1
Mythread1 mythread1 = new Mythread1();
mythread1.start();
//方式2
Mythread2 mythread2 = new Mythread2();
new Thread(mythread2).start();
//方式3
/*
创建目标对象
创建执行服务:ExecutorService ser=Executors.newFixedThreadPool(1);
提交执行:Future<Boolean> result1=ser.submit(t1);
获取结果:boolean r1=result1.get();
关闭服务:ser.shutdownNow();
*/
Mythread3 mythread3 = new Mythread3();
ExecutorService ser = Executors.newFixedThreadPool(1);
Future<Integer> result1 = ser.submit(mythread3);
Integer r1 = result1.get();
ser.shutdown();
}
}
//1.继承Thread类
class Mythread1 extends Thread{
@Override
public void run() {
System.out.println("Mythread1");
}
}
//2.实现Runnable接口
class Mythread2 implements Runnable{
@Override
public void run() {
System.out.println("Mythread2");
}
}
//3.实现Callable接口
class Mythread3 implements Callable<Integer>{
@Override
public Integer call() throws Exception {
System.out.println("Mythread3");
return 100;
}
}
回顾线程创建的三种方法
最新推荐文章于 2024-07-14 14:59:27 发布