码上敲享录 > java高并发常见问题 > Semaphore的tryAcquire(int permits,long timeout,TimeUnit unit)方法的使用

Semaphore的tryAcquire(int permits,long timeout,TimeUnit unit)方法的使用

上一章章节目录下一章 2018-08-01已有2557人阅读 评论(0)

Semaphore的tryAcquire(int permits,long timeout,TimeUnit unit)方法的使用

答:

有参方法tryAcquire(int permits,long timeout,TimeUnit unit)的作用是在指定的时间timeout内尝试地获得permits个许可,如果获取不到则返回false。

下面semaphore.tryAcquire(2,2, TimeUnit.SECONDS)表示2秒内获取2个许可,获取不到则返回false

Semaphore semaphore = new Semaphore(2);
if (semaphore.tryAcquire(2,2, TimeUnit.SECONDS)) {
   System.
out.println(Thread.currentThread().getName() + "执行时间:" + System.currentTimeMillis());
semaphore.release(2);
}


本文链接:http://www.yayihouse.com/yayishuwu/chapter/1398


0

有建议,请留言!

  • *您的姓名:

  • *所在城市:

  • *您的联系电话:

    *您的QQ:

  • 咨询问题:

  • 提 交