• java多线程学习


    什么是进程

    进程是一个可执行的应用程序,任何进程都有一个主线程作为入口,是线程的集合

    什么是多线程

    多线程可以提高效率,我们在电脑操作的时候,开多个窗口,并不是多线程并发,是cpu在切换,只不过速度很快,我们感觉不到,多线程是在同一个时刻同时进行

    为什么要使用多线程?

    假设你有100桶水,你一个小时能打20桶,现在我们需要你一个小时内都把这些谁打完?怎么办?这时候需要多叫几个人一起打水

    创建多线程的几种方式

    1.继承thread类,实现run方法

    2.匿名内部类

    3.实现runable接口

    4.callable

    5.使用线程池创建

    当我们启动多线程的时候,代码不是顺序执行,而是交替执行(异步,俩个线程互不印象),单线程是从上往下执行(同步)

    继承thread

    class ThreadTest extends Thread{
    
        @Override
        public void run() {
            for (int i=0;i<30;i++){
                System.out.println("run:"+i);
            }
        }
    }
    public class ThreadDemo {
    
    
        public static void main(String[] args) {
    
            ThreadTest t1 = new ThreadTest();
            t1.start();
            for (int i = 0; i <30 ; i++) {
    
                System.out.println("main:"+i);
                
            }
        }
    
    
    }
    thead

     实现runable接口

    这方式比继承接口的方式要好用,因为java中是单继承,多实现的方式,你如果是继承了thread类就不能在继承别的类了

    class ThreadTest02 implements Runnable{
    
        @Override
        public void run() {
            for (int i=0;i<30;i++){
                System.out.println("runable:"+i);
            }
        }
    }
    
    public class ThreadDemo02 {
    
    
        public static void main(String[] args) {
    
         new Thread(new ThreadTest02()).start();
            for (int i = 0; i <30 ; i++) {
    
                System.out.println("main:"+i);
                
            }
        }
    
    
    }
    View Code

    匿名内部类的方式创建

         Thread  t1  =   new Thread(new Runnable() {
                @Override
                public void run() {
                    for (int i = 0; i <10 ; i++) {
                        System.out.println("nei bu lei "+ i);
                    }
                }
            });
         t1.start();
        }
    View Code

    一起交流进步.扫描下方QQ二维码即可

  • 相关阅读:
    vite的使用
    webpack--Plugin
    webpack--loader
    uniapp 或小程序,通过蓝牙连接设备, 给设备配网
    每一项与之前一项相加
    vue使用vue-fullpage
    React基礎
    无间隙循环轮播效果
    Wow.js动画效果
    正则表达式
  • 原文地址:https://www.cnblogs.com/bj-xiaodao/p/10514835.html
Copyright © 2020-2023  润新知