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(){
    
        }
    });
  • 相关阅读:
    机器学习概要
    Latex公式压缩
    MATLAB多项式运算
    利用MathType为公式编号并引用
    MATLAB符号对象与符号运算
    MATLAB矩阵运算
    MATLAB绘制函数图
    MATLAB程序控制语句
    MATLAB关系运算符和逻辑运算符
    Raspberry pi之wifi设置-3
  • 原文地址:https://www.cnblogs.com/yuyu666/p/9733738.html
Copyright © 2011-2022 走看看