public class RedissonSemaphore extends RedissonObject implements RSemaphore
Semaphore.
Works in non-fair mode. Therefore order of acquiring is unpredictable.
codec, name| Constructor and Description |
|---|
RedissonSemaphore(CommandAsyncExecutor commandExecutor,
String name) |
| Modifier and Type | Method and Description |
|---|---|
void |
acquire()
Acquires a permit.
|
void |
acquire(int permits)
Acquires defined amount of
permits. |
RFuture<Void> |
acquireAsync()
Acquires a permit.
|
RFuture<Void> |
acquireAsync(int permits)
Acquires defined amount of
permits. |
void |
addPermits(int permits)
Increases or decreases the number of available permits by defined value.
|
RFuture<Void> |
addPermitsAsync(int permits)
Increases or decreases the number of available permits by defined value.
|
int |
availablePermits()
Returns amount of available permits.
|
RFuture<Integer> |
availablePermitsAsync()
Returns amount of available permits.
|
boolean |
clearExpire()
Clear an expire timeout or expire date for object.
|
RFuture<Boolean> |
clearExpireAsync()
Clear an expire timeout or expire date for object in async mode.
|
protected RFuture<Boolean> |
clearExpireAsync(String... keys) |
int |
drainPermits()
Acquires and returns all permits that are immediately available.
|
RFuture<Integer> |
drainPermitsAsync()
Acquires and returns all permits that are immediately available.
|
boolean |
expire(Instant instant)
Set an expire date for object.
|
boolean |
expire(long timeToLive,
TimeUnit timeUnit)
Set a timeout for object.
|
RFuture<Boolean> |
expireAsync(Instant instant)
Set an expire date for object.
|
RFuture<Boolean> |
expireAsync(long timeToLive,
TimeUnit timeUnit)
Set a timeout for object in async mode.
|
protected RFuture<Boolean> |
expireAsync(long timeToLive,
TimeUnit timeUnit,
String... keys) |
boolean |
expireAt(Date timestamp)
Use
RExpirable.expire(Instant) instead |
boolean |
expireAt(long timestamp)
Use
RExpirable.expire(Instant) instead |
RFuture<Boolean> |
expireAtAsync(Date timestamp)
Use
RExpirableAsync.expireAsync(Instant) instead |
RFuture<Boolean> |
expireAtAsync(long timestamp)
Use
RExpirableAsync.expireAsync(Instant) instead |
protected RFuture<Boolean> |
expireAtAsync(long timestamp,
String... keys) |
static String |
getChannelName(String name) |
void |
release()
Releases a permit.
|
void |
release(int permits)
Releases defined amount of
permits. |
RFuture<Void> |
releaseAsync()
Releases a permit.
|
RFuture<Void> |
releaseAsync(int permits)
Releases defined amount of
permits. |
long |
remainTimeToLive()
Remaining time to live of Redisson object that has a timeout
|
RFuture<Long> |
remainTimeToLiveAsync()
Remaining time to live of Redisson object that has a timeout
|
boolean |
tryAcquire()
Tries to acquire currently available permit.
|
boolean |
tryAcquire(int permits)
Tries to acquire defined amount of currently available
permits. |
boolean |
tryAcquire(int permits,
long waitTime,
TimeUnit unit)
Tries to acquire defined amount of currently available
permits. |
boolean |
tryAcquire(long time,
TimeUnit unit)
Tries to acquire currently available permit.
|
RFuture<Boolean> |
tryAcquireAsync()
Acquires a permit.
|
RFuture<Boolean> |
tryAcquireAsync(int permits)
Tries to acquire defined amount of currently available
permits. |
RFuture<Boolean> |
tryAcquireAsync(int permits,
long waitTime,
TimeUnit unit)
Tries to acquire defined amount of currently available
permits. |
RFuture<Boolean> |
tryAcquireAsync(long waitTime,
TimeUnit unit)
Tries to acquire currently available permit.
|
boolean |
trySetPermits(int permits)
Tries to set number of permits.
|
RFuture<Boolean> |
trySetPermitsAsync(int permits)
Tries to set number of permits.
|
addListener, addListener, addListenerAsync, addListenerAsync, copy, copyAsync, delete, deleteAsync, deleteAsync, dump, dumpAsync, encode, encode, encode, encode, encodeMapKey, encodeMapKeys, encodeMapValue, encodeMapValues, get, getCodec, getIdleTime, getIdleTimeAsync, getLockByMapKey, getLockByValue, getName, getRawName, getRawName, isExists, isExistsAsync, migrate, migrateAsync, move, moveAsync, prefixName, removeListener, removeListenerAsync, removeListenersAsync, rename, renameAsync, renamenx, renamenxAsync, restore, restore, restoreAndReplace, restoreAndReplace, restoreAndReplaceAsync, restoreAndReplaceAsync, restoreAsync, restoreAsync, setName, sizeInMemory, sizeInMemoryAsync, sizeInMemoryAsync, sizeInMemoryAsync, suffixName, toSeconds, toStream, touch, touchAsync, unlink, unlinkAsyncclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitclearExpire, expire, expire, expireAt, expireAt, remainTimeToLiveaddListener, copy, delete, dump, getCodec, getIdleTime, getName, isExists, migrate, move, removeListener, rename, renamenx, restore, restore, restoreAndReplace, restoreAndReplace, sizeInMemory, touch, unlinkclearExpireAsync, expireAsync, expireAsync, expireAtAsync, expireAtAsync, remainTimeToLiveAsyncaddListenerAsync, copyAsync, deleteAsync, dumpAsync, getIdleTimeAsync, isExistsAsync, migrateAsync, moveAsync, removeListenerAsync, renameAsync, renamenxAsync, restoreAndReplaceAsync, restoreAndReplaceAsync, restoreAsync, restoreAsync, sizeInMemoryAsync, touchAsync, unlinkAsyncpublic RedissonSemaphore(CommandAsyncExecutor commandExecutor, String name)
public void acquire()
throws InterruptedException
RSemaphoreacquire in interface RSemaphoreInterruptedException - if the current thread was interruptedpublic void acquire(int permits)
throws InterruptedException
RSemaphorepermits.
Waits if necessary until all permits became available.acquire in interface RSemaphorepermits - the number of permits to acquireInterruptedException - if the current thread is interruptedpublic RFuture<Void> acquireAsync()
RSemaphoreAsyncacquireAsync in interface RSemaphoreAsyncpublic RFuture<Void> acquireAsync(int permits)
RSemaphoreAsyncpermits.
Waits if necessary until all permits became available.acquireAsync in interface RSemaphoreAsyncpermits - the number of permits to acquirepublic boolean tryAcquire()
RSemaphoretryAcquire in interface RSemaphoretrue if a permit was acquired and false
otherwisepublic boolean tryAcquire(int permits)
RSemaphorepermits.tryAcquire in interface RSemaphorepermits - the number of permits to acquiretrue if permits were acquired and false
otherwisepublic RFuture<Boolean> tryAcquireAsync()
RSemaphoreAsynctryAcquireAsync in interface RSemaphoreAsynctrue if a permit was acquired and false
otherwisepublic RFuture<Boolean> tryAcquireAsync(int permits)
RSemaphoreAsyncpermits.tryAcquireAsync in interface RSemaphoreAsyncpermits - the number of permits to acquiretrue if permits were acquired and false
otherwisepublic RFuture<Boolean> tryAcquireAsync(long waitTime, TimeUnit unit)
RSemaphoreAsyncwaitTime if necessary until a permit became available.tryAcquireAsync in interface RSemaphoreAsyncwaitTime - the maximum time to waitunit - the time unittrue if a permit was acquired and false
otherwisepublic boolean tryAcquire(int permits,
long waitTime,
TimeUnit unit)
throws InterruptedException
RSemaphorepermits.
Waits up to defined waitTime if necessary until all permits became available.tryAcquire in interface RSemaphorepermits - amount of permitswaitTime - the maximum time to waitunit - the time unittrue if permits were acquired and false
otherwiseInterruptedException - if the current thread was interruptedpublic RFuture<Boolean> tryAcquireAsync(int permits, long waitTime, TimeUnit unit)
RSemaphoreAsyncpermits.
Waits up to defined waitTime if necessary until all permits became available.tryAcquireAsync in interface RSemaphoreAsyncpermits - amount of permitswaitTime - the maximum time to waitunit - the time unittrue if permits were acquired and false
otherwisepublic boolean tryAcquire(long time,
TimeUnit unit)
throws InterruptedException
RSemaphorewaitTime if necessary until a permit became available.tryAcquire in interface RSemaphoretime - the maximum time to waitunit - the time unittrue if a permit was acquired and false
otherwiseInterruptedException - if the current thread was interruptedpublic void release()
RSemaphorerelease in interface RSemaphorepublic void release(int permits)
RSemaphorepermits.
Increases the number of available permits by permits amount.release in interface RSemaphorepermits - amount of permitspublic RFuture<Void> releaseAsync()
RSemaphoreAsyncreleaseAsync in interface RSemaphoreAsyncpublic RFuture<Void> releaseAsync(int permits)
RSemaphoreAsyncpermits.releaseAsync in interface RSemaphoreAsyncpermits - amountpublic int drainPermits()
RSemaphoredrainPermits in interface RSemaphorepublic RFuture<Integer> drainPermitsAsync()
RSemaphoreAsyncdrainPermitsAsync in interface RSemaphoreAsyncpublic int availablePermits()
RSemaphoreavailablePermits in interface RSemaphorepublic RFuture<Integer> availablePermitsAsync()
RSemaphoreAsyncavailablePermitsAsync in interface RSemaphoreAsyncpublic boolean trySetPermits(int permits)
RSemaphoretrySetPermits in interface RSemaphorepermits - - number of permitstrue if permits has been set successfully,
otherwise false if permits were already set.public RFuture<Boolean> trySetPermitsAsync(int permits)
RSemaphoreAsynctrySetPermitsAsync in interface RSemaphoreAsyncpermits - - number of permitstrue if permits has been set successfully, otherwise false.public void addPermits(int permits)
RSemaphoreaddPermits in interface RSemaphorepermits - amount of permits to add/removepublic RFuture<Void> addPermitsAsync(int permits)
RSemaphoreAsyncaddPermitsAsync in interface RSemaphoreAsyncpermits - amount of permits to add/removepublic boolean expire(long timeToLive,
TimeUnit timeUnit)
RExpirableexpire in interface RExpirabletimeToLive - - timeout before object will be deletedtimeUnit - - timeout time unittrue if the timeout was set and false if notpublic RFuture<Boolean> expireAsync(long timeToLive, TimeUnit timeUnit)
RExpirableAsyncexpireAsync in interface RExpirableAsynctimeToLive - - timeout before object will be deletedtimeUnit - - timeout time unittrue if the timeout was set and false if notpublic boolean expireAt(long timestamp)
RExpirableRExpirable.expire(Instant) insteadexpireAt in interface RExpirabletimestamp - - expire date in milliseconds (Unix timestamp)true if the timeout was set and false if notpublic RFuture<Boolean> expireAtAsync(long timestamp)
RExpirableAsyncRExpirableAsync.expireAsync(Instant) insteadexpireAtAsync in interface RExpirableAsynctimestamp - - expire date in milliseconds (Unix timestamp)true if the timeout was set and false if notpublic boolean expire(Instant instant)
RExpirableexpire in interface RExpirableinstant - - expire datetrue if the timeout was set and false if notpublic RFuture<Boolean> expireAsync(Instant instant)
RExpirableAsyncexpireAsync in interface RExpirableAsyncinstant - - expire datetrue if the timeout was set and false if notpublic boolean expireAt(Date timestamp)
RExpirableRExpirable.expire(Instant) insteadexpireAt in interface RExpirabletimestamp - - expire datetrue if the timeout was set and false if notpublic RFuture<Boolean> expireAtAsync(Date timestamp)
RExpirableAsyncRExpirableAsync.expireAsync(Instant) insteadexpireAtAsync in interface RExpirableAsynctimestamp - - expire datetrue if the timeout was set and false if notpublic boolean clearExpire()
RExpirableclearExpire in interface RExpirabletrue if timeout was removed
false if object does not exist or does not have an associated timeoutpublic RFuture<Boolean> clearExpireAsync()
RExpirableAsyncclearExpireAsync in interface RExpirableAsynctrue if the timeout was cleared and false if notpublic long remainTimeToLive()
RExpirableremainTimeToLive in interface RExpirablepublic RFuture<Long> remainTimeToLiveAsync()
RExpirableAsyncremainTimeToLiveAsync in interface RExpirableAsyncprotected RFuture<Boolean> expireAsync(long timeToLive, TimeUnit timeUnit, String... keys)
Copyright © 2014–2021 Redisson. All rights reserved.