Semaphore的tryAcquire(long timeout,TimeUnit unit)方法的使用
答:
有参方法tryAcquire(int long timeout,TimeUnit unit)的作用是在指定的时间内尝试地获得1个许可,如果获取不到则返回false。
Semaphore semaphore = new Semaphore(1);
if (semaphore.tryAcquire(2, TimeUnit.SECONDS)) {
System.out.println(Thread.currentThread().getName() + "执行时间:" + System.currentTimeMillis());
semaphore.release(2);
}