其他分享
首页 > 其他分享> > 多线程

多线程

作者:互联网

1.新建多线程3中方式:

  1)继承Thread: 

public class ThreadExtends {
    public static void main(String[] args) {
        MyThread mt=new MyThread();
        mt.start();
        for (int i = 0; i <200 ; i++) {
            System.out.println("当前执行的线程:"+Thread.currentThread().getName()+"-"+i);  //获取当前线程名字
        }
    }
}
class MyThread extends Thread{
    @Override
    public void run() {
        for (int i = 0; i <200 ; i++) {
            try {
                Thread.sleep(1);           //sleep 是静态方法
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            System.out.println("当前执行的线程:"+Thread.currentThread().getName()+"-"+i);  //获取当前线程名字
        }
    }
}

  2)实现Runnable:

public class ThreadRunnbleDemo {
    public static void main(String[] args) {
        MyRunnable r=new MyRunnable();
        Thread t=new Thread(r);
        t.start();
        for (int i = 0; i <200 ; i++) {
          System.out.println("当前执行的线程:"+Thread.currentThread().getName()+""+i); 
        }
    }
}
class MyRunnable implements Runnable{
    @Override
    public void run() {
        for (int i = 0; i <200 ; i++) {
          System.out.println("当前执行的线程:"+Thread.currentThread().getName()+""+i);  
        }
    }

}

  3)线程池(也是实现Runnable) 

public class ThreadPool {
    public static void main(String[] args) {
        ExecutorService  pool= Executors.newFixedThreadPool(2);
        MyRunnable r=new MyRunnable();
        pool.submit(r);

    }
}
class  MyRunnable  implements  Runnable{
    @Override
    public void run() {
        for (int i = 0; i <10 ; i++) {
            System.out.println(Thread.currentThread().getName()+ i);
        }
    }
}

 

 

 

 

 

 

标签:MyRunnable,int,void,class,new,多线程,public
来源: https://blog.csdn.net/cc_joke/article/details/81148628