码迷,mamicode.com
首页 > 编程语言 > 详细

线程编程的两种方法

时间:2018-10-01 00:18:17      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:news   ati   lan   两种   中继   thread   i++   dex   single   

写一个类,继承Thread类,覆盖Thread类中继承来的run()方法,这样就写好了自定义的线程类。

继承java.lang.Thread类:


    class MyThread extends Thread{

        public void run(){        
       //覆盖run(),线程体方法,自身其实就是普通的方法

            .......

        }

    }

启动线程:


    public class TestThread{

        public static void main(){

            Thread t1=new Mythread();

            T1.start();        
           //调用start()来启动线程,线程启动方法,向线程调度器说明当前线程已经准备好了,是一种可运行状态

        }

    }

写一个类,实现Runable接口,实现其中的run()方法。这种方法写好的类的对象需要作为线程类创建对象时构造方法的参数。

实现java.lang.Runnable接口:


    Class MyThread  implements Runnable{

        public void run(){

        }

    }

启动线程:


    public class TestThread{

        public static void main(){

            Runnable myThread = new MyThread();

            Thread t = new Thread(myThread);

            t.start();

        }

    }

从java5开始,还有如下一些线程池创建多线程的方式:


ExecutorService pool = Executors.newFixedThreadPool(3)

for(int i=0;i<10;i++){

  pool.execute(new Runable(){
    public void run(){

    }
  });

}

Executors.newCachedThreadPool().execute(new Runable(){
    public void run(){

    }
});

Executors.newSingleThreadExecutor().execute(new Runable(){
    public void run(){

    }
});

线程编程的两种方法

标签:news   ati   lan   两种   中继   thread   i++   dex   single   

原文地址:https://www.cnblogs.com/yuyu666/p/9733738.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!