diff options
Diffstat (limited to 'main/client/src/Lock.java')
-rw-r--r-- | main/client/src/Lock.java | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/main/client/src/Lock.java b/main/client/src/Lock.java new file mode 100644 index 00000000..6e5f18b0 --- /dev/null +++ b/main/client/src/Lock.java @@ -0,0 +1,14 @@ +package mill.main.client; +public abstract class Lock implements AutoCloseable{ + abstract public Locked lock() throws Exception; + abstract public Locked tryLock() throws Exception; + + public void await() throws Exception{ + lock().release(); + } + + /** + * Returns `true` if the lock is *available for taking* + */ + abstract public boolean probe() throws Exception; +}
\ No newline at end of file |