zoukankan      html  css  js  c++  java
  • 线程编程的两种方法

    写一个类,继承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(){
    
        }
    });
  • 相关阅读:
    手动卸载Office2010
    css盒子模型和定位
    [转]Mysql 存储过程和函数区别
    (转载)今天面试两个人的感受
    配置apache和php mysql的一些问题
    css position[转
    drools7 (四、FactHandle 介绍)
    drools7 (三、kmodule 介绍)
    drools7 (二、agenda-group 的使用)
    drools7 (一、最简单的例子)
  • 原文地址:https://www.cnblogs.com/yuyu666/p/9733738.html
Copyright © 2011-2022 走看看