线程创建的方式

说说线程的创建方式

  1. 继承thread类,重写run()方法;

  2. 实现Runnable接口,实现run()方法;

  3. 实现callable接口,实现call方法;

    ​ 使用Runnable接口和Callable接口的方式,区别在于前者不能获得线程执行结束的返回值,后者可以获得线程执行结束的返回值。

  4. 线程池创建线程(线程池:主要起到管理线程作用。线程池的好处:1.更方便管理线程2.可以减少因频繁创建线程和销毁线程带来的内存消耗,提高程序的运行效率。)

// 新建类实现Callable接口
public class Mythread implements Callable {
@Override
public Object call() throws Exception {
int a=0;
for (int i = 0; i < 10; i++) {
a+=i;
System.out.print(a+"\t");
}
return a ;
}
}

public class Test {
public static void main(String[] args) throws ExecutionException, InterruptedException {
//1.新建实现Callable接口的类的对象mythread
Mythread mythread = new Mythread();
//2.mythread为参数,新建FutareTask的对象futureTask
FutureTask futureTask = new FutureTask<>(mythread);
//3.futureTask为参数,新建线程对象
Thread thread = new Thread(futureTask);
thread.start();
System.out.println(futureTask.get());
}
}

posted @   与否业务NOW  阅读(16)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
点击右上角即可分享
微信分享提示