Java多线程的实现方法-创新互联

创新互联www.cdcxhl.cn八线动态BGP香港云服务器提供商,新人活动买多久送多久,划算不套路!

成都创新互联不只是一家网站建设的网络公司;我们对营销、技术、服务都有自己独特见解,公司采取“创意+综合+营销”一体化的方式为您提供更专业的服务!我们经历的每一步也许不一定是最完美的,但每一步都有值得深思的意义。我们珍视每一份信任,关注我们的网站设计、成都网站制作质量和服务品质,在得到用户满意的同时,也能得到同行业的专业认可,能够为行业创新发展助力。未来将继续专注于技术创新,服务升级,满足企业一站式成都营销网站建设需求,让再小的品牌网站建设也能产生价值!

这篇文章主要讲解了Java多线程的实现方法,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。

多线程三种主要实现方式:继承Thread类,实现Runnable接口、Callable和Futrue。

一、简单实现

import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.FutureTask;
import java.util.concurrent.TimeUnit;

public class T02_HowToCreateThread {
  //1.继承Thread类
  static class MyThread extends Thread{
    @Override
    public void run() {
      System.out.println("MyThread-->");
    }
  }
  //3.实现Runnable接口
  static class MyRun implements Runnable{

    @Override
    public void run() {
      System.out.println("MyRunable-->");
    }
  }
  //4.实现Callable接口
  static class MyCall implements Callable{

    @Override
    public Object call() throws Exception {
      System.out.println("myCallable-->");
      return 1;
    }
  }
  public static void main(String[] args) throws ExecutionException, InterruptedException {
    //1.继承Thread类
    new MyThread().start();
    //2.lambda与继承Thread类类//1.继承Thread类似,最简单
    new Thread(()->{
      System.out.println("lambda-->");
    }).start();
    //3.实现Runnable接口
    new Thread(new MyRun()).start();
    new Thread(new Runnable() {
      @Override
      public void run() {
        System.out.println("simple->Runnable");
      }
    }).start();
    //4.实现Callable接口,并用包装器FutureTask来同时实现Runable、Callable两个接口,可带返回结果
    MyCall mycall = new MyCall();
    FutureTask futureTask = new FutureTask(mycall);
    new Thread(futureTask).start();
    System.out.println(futureTask.get());
  }
}

分享名称:Java多线程的实现方法-创新互联
浏览地址:http://pwwzsj.com/article/ihdsd.html