21xrx.com
2024-09-17 03:40:33 Tuesday
登录
文章检索 我的文章 写文章
Java多线程编程实战:几种实现方式+代码案例
2023-06-15 18:47:42 深夜i     --     --
Java 多线程 Thread Runnable Callable

Java作为一门流行的编程语言,在多线程编程方面的支持非常充分。在实际开发中,使用多线程可以很好地提高程序的性能和并发处理能力。本文将介绍Java实现多线程的几种方式,并附带详细的代码案例。

一、使用Thread类实现多线程

Thread类是Java中最基本的多线程实现方式。我们可以创建一个类继承Thread,然后重写run()方法,在该方法内写入需要执行的任务。最后创建实例并调用start()方法即可。

代码示例:


public class ThreadDemo extends Thread {

  public void run(){

    System.out.println("ThreadDemo is running...");

  }

  public static void main(String[] args) {

    ThreadDemo demo = new ThreadDemo();

    demo.start();

  }

}

二、使用实现Runnable接口实现多线程

实现Runnable接口也是Java实现多线程的一种方式,它与使用Thread类实现不同的是,可以避免由于Java的单继承机制而带来的局限性,同时也更符合面向对象的设计原则。

代码示例:


public class RunnableDemo implements Runnable{

  public void run(){

    System.out.println("RunnableDemo is running...");

  }

  public static void main(String[] args) {

    RunnableDemo demo = new RunnableDemo();

    Thread thread = new Thread(demo);

    thread.start();

  }

}

三、使用Callable和Future实现多线程

Callable是支持返回结果和抛出异常的线程任务,Future则是用来获取Callable执行的结果。这种方式相比于前两种方式,更加灵活,可以获得更多的控制权。

代码示例:


public class CallableDemo implements Callable {

  public String call() throws Exception

    return "CallableDemo is running...";

  

  public static void main(String[] args) throws Exception{

    CallableDemo demo = new CallableDemo();

    FutureTask task = new FutureTask<>(demo);

    Thread thread = new Thread(task);

    thread.start();

    String result = task.get();

    System.out.println(result);

  }

}

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复