zoukankan      html  css  js  c++  java
  • java concurrent并发包使用

    package cn.com.zxf.atomic;
    
    import java.util.concurrent.atomic.AtomicInteger;
    
    public class AtomicExample implements Runnable{
    
        private AtomicInteger atomicInteger;
    
        private int index;
    
        public  AtomicExample(AtomicInteger atomicInteger, int index){
    
            this.atomicInteger=atomicInteger;
    
            this.index = index;
        }
    
    
        @Override
        public void run() {
    
            System.out.println("当前线程名称:"+Thread.currentThread().getName());
    
            atomicInteger.addAndGet(index);
    
        }
    }
    package cn.com.zxf.atomic;

    import java.util.concurrent.*;
    import java.util.concurrent.atomic.AtomicInteger;
    import java.util.concurrent.locks.Lock;
    import java.util.concurrent.locks.ReentrantLock;

    public class AtomicExampleTest {


    //线程池
    private static ExecutorService executorService = Executors.newFixedThreadPool(10);



    public static void main(String[] args) throws Exception {
    //拦珊 使用
    CountDownLatch countDownLatch = new CountDownLatch(100);
    //信号量
    Semaphore semaphore = new Semaphore(3);
    //atomic 包使用 底层是基于CAS 并发编程
    final AtomicInteger atomicInteger = new AtomicInteger();
    //java 提供的锁
    Lock lock = new ReentrantLock();
    //队列
    LinkedBlockingDeque linkedBlockingDeque = new LinkedBlockingDeque();
    for(int i = 0 ;i<100; i++){
    Thread.sleep(1000);
    semaphore.acquire();
    executorService.execute(new AtomicExample(atomicInteger,1));
    semaphore.release();

    Thread.sleep(1000);
    countDownLatch.countDown();
    }

    countDownLatch.await();

    executorService.shutdown();
    System.out.println("计算值:"+atomicInteger.get());
    }
    }
    concurrent 使用
  • 相关阅读:
    php中的list()用法中要注意的地方
    怎么让小白理解intel处理器(CPU)的分类
    CPU的历史
    【主板上各种接口和附属部件科普】
    NVMe SSD是什么?
    带你认识SATA、mSATA 、PCIe和M.2四种接口
    那些长短不一的PCI-E插槽都有什么不一样?
    ceph 指定OSD创建pool
    ceph cache pool配置
    搭建ceph集群(单节点)
  • 原文地址:https://www.cnblogs.com/zxf330301/p/10958957.html
Copyright © 2011-2022 走看看