zoukankan      html  css  js  c++  java
  • 多线程(2)—静态修饰符实现属性共享数据

    1.使用静态修饰符实现属性共享数据

    2.多线程优点:

    • 1.提高应用程序的响应
    • 2.提高CPU的利用率
    • 3.改善程序结构

    3.多线程分类:

    • 守护线程和用户线程

    4.线程的生命周期

    • 新建、就绪、运行、阻塞、死亡

    5.代码实例

    public class Test1 {
    
        public static void main(String[] args) {
            //方法一—继承
            Number num1 = new Number();//创建了多个对象,类属性需要使用静态修饰符实现共用
            Number num2 = new Number();
            num1.setName("类一线程一");
            num2.setName("类一线程二");
            num1.start();
            num2.start();
            //方法二—实现
            Number1 n1 = new Number1();//只new了一个对象,所以不需要使用静态修饰符实现属性共用
            Thread t1 = new Thread(n1);//对于共享数据的问题,相比较而言实现的方式更好
            Thread t2 = new Thread(n1);
            t1.setName("类二线程一");
            t2.setName("类二线程二");
            t1.start();
            t2.start();
        }
    
    }
    //继承Thread
    class Number extends Thread{
        static int number = 20;//属性设置为静态,这样两个对象就可共用一个number属性
        @Override
        public void run() {
            //两件事:1.同步number数字输出并减减,2.数字减一
            while(true){
                    if(number>0){
                        System.out.println("我是"+Thread.currentThread().getName()+":"+number--);
                    }else{
                        break;
                    }
            }
        }
    }
    //实现接口Ruunaable
    class Number1 implements Runnable{
        int number = 20;
        @Override
        public void run() {
            //两件事:1.同步number数字输出并减减,2.数字减一
                    while(true){
                            if(number>0){
                                System.out.println("我是"+Thread.currentThread().getName()+":"+number--);
                            }else{
                                break;
                            }
                    }
        }
    
    }
  • 相关阅读:
    暴力枚举 --- 多方法求解
    图论 --- 骑士周游问题,DFS
    数论 --- 同余定理
    数论 --- 筛法求素数进一步优化
    求大素数
    codeforces --- Round #244 (Div. 2) B. Prison Transfer
    codeforces --- Round #244 (Div. 2) A. Police Recruits
    线段树 --- (区间维护+逆推)
    线段数 --- (单点更新、求逆序对)
    线段树 --- (单点更新、区间求和、模板题)
  • 原文地址:https://www.cnblogs.com/tengpengfei/p/10454002.html
Copyright © 2011-2022 走看看