• 创建线程的方式


    有哪几种方式?

    1. 继承Thread
    2. 实现Runnable接口
    3. 实现Callbale接口

    但实际后两种,更准确的理解是创建了一个可执行的任务,要采用多线程的方式执行,

    还需要通过创建Thread对象来执行,比如 new Thread(new Runnable(){}).start();这样的方式来执行。

    在实际开发中,我们通常采用线程池的方式来完成Thread的创建,更好管理线程资源。

    1 继承Thread

    class MyThread extends Thread{
        @Override
        public void run() {
            System.out.println(Thread.currentThread().getName()+":running.....");
        }
    }
    
    public static void main(String[] args){
            MyThread thread = new MyThread();
            //正确启动线程的方式
            //thread.run();//调用方法并非开启新线程
            thread.start();
    }
    

    2 实现Runnable接口

    class MyTask implements Runnable{
    
        @Override
        public void run() {
            System.out.println(Thread.currentThread().getName()+":running....");
        }
    }
    
    public static void main(String[] args){
            MyTask task = new MyTask();
            //task.start(); //并不能直接以线程的方式来启动
            //它表达的是一个任务,需要启动一个线程来执行
            new Thread(task).start();
        }
    

    3 实现Callbale接口

    class MyTask2 implements Callable<Boolean>{
    
        @Override
        public Boolean call() throws Exception {
            return null;
        }
    }
    
  • 相关阅读:
    sqlserver查询某个数据库有多少个表 ,存过,函数,视图
    C# 金额转为大写金额
    C# TextBox中只能输入数字的几种常用方法(C#)
    C# 设置Excel单元格属性
    MS SQL 维护小记
    webapi demo
    远程 TeamViewer
    https://github.com/
    C# Fun 类似委托
    技术点文章收集
  • 原文地址:https://www.cnblogs.com/hellosiyu/p/13735804.html
Copyright © 2020-2023  润新知