comparison src/goodjava/lucene/logging/SemaphoreLock.java @ 1538:634f6765830e

use goodjava/lucene/logging
author Franklin Schmidt <fschmidt@gmail.com>
date Fri, 07 Aug 2020 21:42:16 -0600
parents
children
comparison
equal deleted inserted replaced
1537:f7649ad6e3e7 1538:634f6765830e
1 package goodjava.lucene.logging;
2
3 import java.util.concurrent.Semaphore;
4 import java.util.concurrent.TimeUnit;
5
6
7 public final class SemaphoreLock {
8 private final Semaphore semaphore = new Semaphore(1);
9
10 public void unlock() {
11 semaphore.release();
12 }
13
14 public boolean isLocked() {
15 return semaphore.availablePermits() == 0;
16 }
17
18 public boolean tryLock(long time,TimeUnit unit) throws InterruptedException {
19 return semaphore.tryAcquire(time,unit);
20 }
21 }