Java并发信号量demo
来源:互联网 发布:生物技术专业 知乎 编辑:程序博客网 时间:2024/05/18 00:50
个人觉得信号量Semaphore 防止代码一次超过多个线程进入,在线程之间发送信号,下面代码是拷贝别的网站的demo。
import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;import java.util.concurrent.Semaphore;public class TestSemaphore {public static void main(String[] args) {// 线程池ExecutorService exec = Executors.newCachedThreadPool();// 只能5个线程同时访问final Semaphore semp = new Semaphore(5);// 模拟20个客户端访问for (int index = 0; index < 20; index++) {final int NO = index;Runnable run = new Runnable() {public void run() {try {// 获取许可semp.acquire();System.out.println("Accessing: " + NO);Thread.sleep((long) (Math.random() * 10000));// 访问完后,释放semp.release();System.out.println("-----------------" + semp.availablePermits());} catch (InterruptedException e) {e.printStackTrace();}}};exec.execute(run);}// 退出线程池exec.shutdown();}}
阅读全文
0 0
- Java并发信号量demo
- JAVA并发信号量 Semaphore
- java并发包:信号量
- Java并发之信号量
- java并发信号量Semaphore
- java并发之Semaphore(信号量)
- Java并发系列-22、信号量
- java 并发工具包 -信号量 Semaphore
- JAVA多线程并发Demo
- java并发之Semaphore(计数信号量)
- java并发包学习系列:信号量
- 信号量(java并发编程实战5.5.4)
- Java多线程/并发22、信号量Semaphore
- Java并发包之Semaphore信号量
- java并发编程学习8--同步器--信号量
- Java多线程与并发库高级应用之信号量Semaphore
- java 并发信号量和普通锁的区别
- Java并发-类库新组件 - Semaphore 理解:计数信号量
- http 错误码 401 405 400 500
- HDU1036 Average is not Fast Enough!
- shiro(四) 关于session:验证登录时候如何处理session以及其他
- HDU1039 Easier Done Than Said?
- .NET Core 2.0 正式发布信息汇总
- Java并发信号量demo
- HDU1042 N!(大整数类应用)
- How to disable “Type <return> to continue, or q <return> to quit” in gdb?
- pop_count操作
- UVA 202
- HDU1047 Integer Inquiry
- linux测试服务器如何部署web项目
- 解决MySql登录错误ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
- HUD1048 The Hardest Problem Ever