zoukankan      html  css  js  c++  java
  • 线程的3种声明方式

    1.实现Runnable接口,重写run方法 
    实例化线程:new Thread(new MyselfThread()).start();
     
    2.继承Thread类,重写run方法,其实质也是实现Runnable接口
    实例化线程:MyselfThread thread = new MyselfThread(); thread.start();
     
    3.实现Callable接口,实现call()方法,该call()方法将作为线程执行体,并且有返回值,可以声明抛出异常。
    使用FutureTask类来包装Callable对象,使用FutureTask的get方法获得返回值。
    实例化线程:
    MyselfCallable callable = new MyselfCallable();
    FutureTask<Integer> futureTask = new FutureTask<>(callable);
    new Thread(futureTask).start();
    调用futureTask.get()获取call方法返回的结果
     
    一般使用第一种方式实现线程的声明,可避免Java单继承的问题
     
    测试代码的常规写法
    Runnable r = new Runnable(){
        public void run() {
            while(true){
                System.out.println("test");
            }                
        }
    }
    Thread t = new Thread(r);
    t.start();
  • 相关阅读:
    MySQL 连接的使用
    MySQL GROUP BY 语句
    MySQL 排序
    MySQL UNION 操作符
    MySQL LIKE 子句
    MySQL DELETE 语句
    MySQL UPDATE 更新
    MySQL WHERE 子句
    php MySQL 查询数据
    MySQL 插入数据
  • 原文地址:https://www.cnblogs.com/myna/p/7940744.html
Copyright © 2011-2022 走看看