zoukankan      html  css  js  c++  java
  • java多线程关键字volatile的使用

    java多线程关键字volatile的作用是表示多个线程对这个变量共享。

    如果是只读的就可以直接用,写数据的时候要注意同步问题。

    例子:

    package com.ming.thread.volatiletesttrhead1;
    
    
    /**
     * volatile 关键字的使用
     * volatile 这个关键字的作用就是保持由此关键字修饰的变量在多个线程之间可以看得见
     * @author mingge
     *
     */
    public class volatiletesttrhead extends Thread{
    
        volatile public static int count;
        
        //如果去掉了synchronized关键字,就会导致数据不同步了
        synchronized private static void addcount(){
            for(int i=0;i<100;i++){
                count++;
            }
            System.out.println("count="+count);
        }
        
        public void run(){
            addcount();
        }
    }
    package com.ming.thread.volatiletesttrhead1;
    
    public class Run {
    
        public static void main(String[] args) {
            volatiletesttrhead[] mythreadArr=new volatiletesttrhead[100];
            for(int i=0;i<100;i++){
                mythreadArr[i]=new volatiletesttrhead();
            }
            
            for(int i=0;i<100;i++){
                mythreadArr[i].start();
            }
            
        }
    }

    嗨。。。

  • 相关阅读:
    grunt 使用比较
    一些技术要点
    git 使用笔记
    oo的一些概念
    借用构造函数继承非原型
    bower解决js的依赖管理
    需要了解的一些东西
    一些常用的代码
    js模式(一):单例模式
    写给自己的计划
  • 原文地址:https://www.cnblogs.com/huzi007/p/7065457.html
Copyright © 2011-2022 走看看