继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Guava并发:RateLimiter限制资源的并发访问线程数

汪汪一只猫
关注TA
已关注
手记 426
粉丝 129
获赞 715

RateLimiter类似于JDK的信号量Semphore,他用来限制对资源并发访问的线程数。

RateLimiter limiter = RateLimiter.create(4.0); //每秒不超过4个任务被提交limiter.acquire();  //请求RateLimiter, 超过permits会被阻塞executor.submit(runnable); //提交任务

也可以以非阻塞的形式来使用:

If(limiter.tryAcquire()){ //未请求到limiter则立即返回false    doSomething();}else{    doSomethingElse();}

原文链接:http://outofmemory.cn/java/guava/concurrent/RateLimiter

打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP