mirror of
https://github.com/VolmitSoftware/Iris.git
synced 2025-12-29 20:19:06 +00:00
ATOMIC MAYHEM
This commit is contained in:
38
src/main/java/com/volmit/iris/util/IrisLock.java
Normal file
38
src/main/java/com/volmit/iris/util/IrisLock.java
Normal file
@@ -0,0 +1,38 @@
|
||||
package com.volmit.iris.util;
|
||||
|
||||
import java.util.concurrent.locks.ReentrantLock;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class IrisLock
|
||||
{
|
||||
private final ReentrantLock lock;
|
||||
private final String name;
|
||||
private boolean disabled = false;
|
||||
|
||||
public IrisLock(String name)
|
||||
{
|
||||
this.name = name;
|
||||
lock = new ReentrantLock(false);
|
||||
}
|
||||
|
||||
public void lock()
|
||||
{
|
||||
if(disabled)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
lock.lock();
|
||||
}
|
||||
|
||||
public void unlock()
|
||||
{
|
||||
if(disabled)
|
||||
{
|
||||
return;
|
||||
}
|
||||
lock.unlock();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user