SemaphoreDemo
Posted nihaofenghao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SemaphoreDemo相关的知识,希望对你有一定的参考价值。
package com.fh.interview; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Semaphore; /** * @author * * Semaphore用来做特殊资源的并发访问控制是相当合适的,如果有业务场景需要进行流量控制,可以优先考虑Semaphore。 * @create 2018-06-03 下午4:21 **/ public class SemaphoreDemo { private static Semaphore semaphore = new Semaphore(5); public static void main(String[] args) { ExecutorService pool = Executors.newFixedThreadPool(10); for (int i=0;i<10;i++){ pool.execute(new Runnable() { @Override public void run() { try { System.out.println("start"); semaphore.acquire(); System.out.println("do"); Thread.sleep(10000); semaphore.release(); System.out.println("release"); }catch (Exception e){ } } }); } pool.shutdown(); } }
以上是关于SemaphoreDemo的主要内容,如果未能解决你的问题,请参考以下文章