• Java ConcurrentHashMap (Java代码实战-005)


    package Threads;
    
    import com.google.common.collect.Maps;
    
    import java.util.concurrent.ConcurrentMap;
    import java.util.concurrent.ExecutorService;
    import java.util.concurrent.Executors;
    
    /**
     * Created by xfyou 2018/5/21 16:55.
     * 一个采用ConcurrentHashMap并发写数据的例子
     */
    public class ConcurrentHashMapDemo {
        private final ConcurrentMap<Integer, String> conHashMap = Maps.newConcurrentMap();
    
        public static void main(String[] args) {
            ExecutorService service = Executors.newFixedThreadPool(3);
            try {
                ConcurrentHashMapDemo ob = new ConcurrentHashMapDemo();
                service.execute(ob.new WriteThreadOne());
                service.execute(ob.new WriteThreadTwo());
                service.execute(ob.new ReadThread());
            } finally {
                service.shutdown();
            }
        }
    
        /**
         * 线程A向Map中put数据
         */
        class WriteThreadOne implements Runnable {
    
            @Override
            public void run() {
                for (int i = 0; i < 10; i++) {
                    conHashMap.putIfAbsent(i, "A" + i);
                }
            }
        }
    
        /**
         * 线程B向Map中put数据
         */
        class WriteThreadTwo implements Runnable {
    
            @Override
            public void run() {
                for (int i = 0; i < 5; i++) {
                    conHashMap.putIfAbsent(i, "B" + i);
                }
            }
        }
    
        /**
         * 线程C读取Map中的数据
         */
        class ReadThread implements Runnable {
    
            @Override
            public void run() {
                for (Integer k : conHashMap.keySet()) {
                    System.out.println(k + ":" + conHashMap.get(k));
                }
            }
        }
    }
  • 相关阅读:
    django 登录验证的方法
    css table细边框样式
    django ORM创建实体,指定表,指定字段
    Kafka学习之路 (一)Kafka的简介
    NPIO导入导出excel文件
    .net里面<app.config>中value值不能填写特殊符号问题
    创建服务
    读取文本内容
    vs code 代码片段、提示
    .net core worker service安装运行再windows或linux
  • 原文地址:https://www.cnblogs.com/frankyou/p/9068324.html
Copyright © 2020-2023  润新知