public class RedissonPriorityBlockingDeque<V> extends RedissonPriorityDeque<V> implements RPriorityBlockingDeque<V>
Distributed and concurrent implementation of priority blocking deque.
Queue size limited by Redis server memory amount. This is why remainingCapacity() always
returns Integer.MAX_VALUE
RedissonPriorityQueue.BinarySearchResult<V>codec, name| Modifier | Constructor and Description |
|---|---|
protected |
RedissonPriorityBlockingDeque(Codec codec,
CommandAsyncExecutor commandExecutor,
String name,
RedissonClient redisson) |
protected |
RedissonPriorityBlockingDeque(CommandAsyncExecutor commandExecutor,
String name,
RedissonClient redisson) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
clearExpire()
Clear an expire timeout or expire date for object.
|
protected RFuture<Boolean> |
clearExpireAsync(String... keys) |
int |
drainTo(Collection<? super V> c) |
int |
drainTo(Collection<? super V> c,
int maxElements) |
RFuture<Integer> |
drainToAsync(Collection<? super V> c)
Removes all available elements from this queue and adds them
to the given collection in async mode.
|
RFuture<Integer> |
drainToAsync(Collection<? super V> c,
int maxElements)
Removes at most the given number of available elements from
this queue and adds them to the given collection in async mode.
|
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.
|
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 |
protected RFuture<Boolean> |
expireAtAsync(long timestamp,
String... keys) |
V |
move(Duration timeout,
DequeMoveArgs args) |
RFuture<V> |
moveAsync(Duration timeout,
DequeMoveArgs args) |
boolean |
offer(V e,
long timeout,
TimeUnit unit) |
RFuture<Boolean> |
offerAsync(V e)
Inserts the specified element into this queue.
|
boolean |
offerFirst(V e,
long timeout,
TimeUnit unit) |
boolean |
offerLast(V e,
long timeout,
TimeUnit unit) |
List<V> |
poll(int limit)
Retrieves and removes the head elements of this queue.
|
V |
poll(long timeout,
TimeUnit unit) |
RFuture<List<V>> |
pollAsync(int limit)
Retrieves and removes the head elements of this queue.
|
RFuture<V> |
pollAsync(long timeout,
TimeUnit unit)
Retrieves and removes the head of this queue in async mode, waiting up to the
specified wait time if necessary for an element to become available.
|
List<V> |
pollFirst(int limit)
Retrieves and removes the head elements of this queue.
|
V |
pollFirst(long timeout,
TimeUnit unit) |
RFuture<List<V>> |
pollFirstAsync(int limit)
Retrieves and removes the head elements of this queue.
|
RFuture<V> |
pollFirstAsync(long timeout,
TimeUnit unit)
Retrieves and removes value at the head of queue.
|
V |
pollFirstFromAny(long timeout,
TimeUnit unit,
String... queueNames)
Retrieves and removes first available head element of any queue,
waiting up to the specified wait time if necessary for an element to become available
in any of defined queues including queue own.
|
RFuture<V> |
pollFirstFromAnyAsync(long timeout,
TimeUnit unit,
String... queueNames)
Retrieves and removes first available head element of any queue in async mode,
waiting up to the specified wait time if necessary for an element to become available
in any of defined queues including queue own.
|
V |
pollFromAny(long timeout,
TimeUnit unit,
String... queueNames)
Retrieves and removes first available head element of any queue,
waiting up to the specified wait time if necessary for an element to become available
in any of defined queues including queue itself.
|
RFuture<V> |
pollFromAnyAsync(long timeout,
TimeUnit unit,
String... queueNames)
Retrieves and removes first available head element of any queue in async mode,
waiting up to the specified wait time if necessary for an element to become available
in any of defined queues including queue itself.
|
List<V> |
pollLast(int limit)
Retrieves and removes the tail elements of this queue.
|
V |
pollLast(long timeout,
TimeUnit unit) |
V |
pollLastAndOfferFirstTo(String queueName,
long timeout,
TimeUnit unit)
Retrieves and removes last available tail element of this queue and adds it at the head of
queueName,
waiting up to the specified wait time if necessary for an element to become available. |
RFuture<V> |
pollLastAndOfferFirstToAsync(String queueName,
long timeout,
TimeUnit unit)
Retrieves and removes last available tail element of this queue and adds it at the head of
queueName,
waiting up to the specified wait time if necessary for an element to become available. |
RFuture<List<V>> |
pollLastAsync(int limit)
Retrieves and removes the tail elements of this queue.
|
RFuture<V> |
pollLastAsync(long timeout,
TimeUnit unit)
Retrieves and removes value at the tail of queue.
|
V |
pollLastFromAny(long timeout,
TimeUnit unit,
String... queueNames)
Retrieves and removes first available tail element of any queue,
waiting up to the specified wait time if necessary for an element to become available
in any of defined queues including queue own.
|
RFuture<V> |
pollLastFromAnyAsync(long timeout,
TimeUnit unit,
String... queueNames)
Retrieves and removes first available tail element of any queue in async mode,
waiting up to the specified wait time if necessary for an element to become available
in any of defined queues including queue own.
|
void |
put(V e) |
RFuture<Void> |
putAsync(V e)
Inserts the specified element into this queue in async mode, waiting if necessary
for space to become available.
|
void |
putFirst(V e) |
RFuture<Void> |
putFirstAsync(V e)
Adds value to the head of queue.
|
void |
putLast(V e) |
RFuture<Void> |
putLastAsync(V e)
Adds value to the tail of queue.
|
int |
remainingCapacity() |
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
|
int |
subscribeOnElements(Consumer<V> consumer)
Subscribes on elements appeared in this queue.
|
int |
subscribeOnFirstElements(Consumer<V> consumer)
Subscribes on first elements appeared in this queue.
|
int |
subscribeOnLastElements(Consumer<V> consumer)
Subscribes on last elements appeared in this queue.
|
V |
take() |
RFuture<V> |
takeAsync()
Retrieves and removes the head of this queue in async mode, waiting if necessary
until an element becomes available.
|
V |
takeFirst() |
RFuture<V> |
takeFirstAsync()
Retrieves and removes value at the head of queue.
|
V |
takeLast() |
V |
takeLastAndOfferFirstTo(String queueName)
Retrieves and removes last available tail element of any queue and adds it at the head of
queueName,
waiting if necessary for an element to become available
in any of defined queues including queue itself. |
RFuture<V> |
takeLastAndOfferFirstToAsync(String queueName)
Retrieves and removes last available tail element of any queue and adds it at the head of
queueName,
waiting if necessary for an element to become available
in any of defined queues including queue itself. |
RFuture<V> |
takeLastAsync()
Retrieves and removes value at the tail of queue.
|
void |
unsubscribe(int listenerId)
Un-subscribes defined listener.
|
addFirst, addFirstAsync, addFirstIfExists, addFirstIfExistsAsync, addLast, addLastAsync, addLastIfExists, addLastIfExistsAsync, descendingIterator, descendingStream, getLast, getLastAsync, move, moveAsync, offerFirst, offerFirstAsync, offerLast, offerLastAsync, peekFirst, peekFirstAsync, peekLast, peekLastAsync, pollFirst, pollFirstAsync, pollLast, pollLastAsync, pop, popAsync, push, pushAsync, removeAsync, removeFirstAsync, removeFirstOccurrence, removeFirstOccurrenceAsync, removeLast, removeLastAsync, removeLastOccurrence, removeLastOccurrenceAsyncadd, addAll, addAsync, binarySearch, clear, clearExpireAsync, comparator, contains, containsAll, deleteAsync, element, expireAsync, expireAtAsync, getFirst, offer, peek, peekAsync, poll, pollAsync, pollLastAndOfferFirstTo, pollLastAndOfferFirstToAsync, remove, remove, removeAll, removeFirst, retainAll, toString, trySetComparator, wrapLockedAsync, wrapLockedAsyncadd, addAfter, addAfterAsync, addAll, addAllAsync, addAllAsync, addAsync, addAsync, addBefore, addBeforeAsync, addListener, addListenerAsync, containsAllAsync, containsAsync, equals, fastRemove, fastRemoveAsync, fastSet, fastSetAsync, get, get, getAsync, getAsync, hashCode, indexOf, indexOfAsync, indexOfAsync, isEmpty, iterator, lastIndexOf, lastIndexOfAsync, lastIndexOfAsync, listIterator, listIterator, mapReduce, range, range, rangeAsync, rangeAsync, readAll, readAllAsync, readSort, readSort, readSort, readSort, readSort, readSort, readSortAlpha, readSortAlpha, readSortAlpha, readSortAlpha, readSortAlpha, readSortAlpha, readSortAlphaAsync, readSortAlphaAsync, readSortAlphaAsync, readSortAlphaAsync, readSortAlphaAsync, readSortAlphaAsync, readSortAsync, readSortAsync, readSortAsync, readSortAsync, readSortAsync, readSortAsync, remove, remove, removeAllAsync, removeAsync, removeAsync, removeIf, removeListener, removeListenerAsync, retainAllAsync, set, setAsync, size, sizeAsync, sortTo, sortTo, sortTo, sortTo, sortTo, sortTo, sortToAsync, sortToAsync, sortToAsync, sortToAsync, sortToAsync, sortToAsync, subList, toArray, toArray, trim, trimAsyncaddListener, addListenerAsync, copy, copyAsync, delete, 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, 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, finalize, getClass, notify, notifyAll, wait, wait, waitadd, addFirst, addLast, contains, element, iterator, offer, offerFirst, offerLast, peek, poll, push, remove, remove, removeFirstOccurrence, removeLastOccurrence, sizedescendingStreamaddFirstIfExists, addLastIfExists, movedescendingIterator, getFirst, getLast, peekFirst, peekLast, pollFirst, pollLast, pop, removeFirst, removeLastaddFirstAsync, addFirstIfExistsAsync, addLastAsync, addLastIfExistsAsync, getLastAsync, moveAsync, offerFirstAsync, offerLastAsync, peekFirstAsync, peekLastAsync, pollFirstAsync, pollLastAsync, popAsync, pushAsync, removeFirstAsync, removeFirstOccurrenceAsync, removeLastAsync, removeLastOccurrenceAsynccomparator, pollLastAndOfferFirstTo, readAll, trySetComparatoraddListeneraddAll, clear, containsAll, equals, hashCode, isEmpty, parallelStream, removeAll, removeIf, retainAll, spliterator, stream, toArray, toArrayclearExpire, expire, expire, expireAt, expireAt, remainTimeToLivecopy, delete, dump, getCodec, getIdleTime, getName, isExists, migrate, move, removeListener, rename, renamenx, restore, restore, restoreAndReplace, restoreAndReplace, sizeInMemory, touch, unlinkaddListenerAsync, peekAsync, pollAsync, pollLastAndOfferFirstToAsync, readAllAsyncaddAllAsync, addAsync, containsAllAsync, containsAsync, removeAllAsync, removeAsync, retainAllAsync, sizeAsyncreplaceAll, sort, spliteratorprotected RedissonPriorityBlockingDeque(CommandAsyncExecutor commandExecutor, String name, RedissonClient redisson)
protected RedissonPriorityBlockingDeque(Codec codec, CommandAsyncExecutor commandExecutor, String name, RedissonClient redisson)
public void put(V e) throws InterruptedException
put in interface BlockingDeque<V>put in interface BlockingQueue<V>InterruptedExceptionpublic boolean offer(V e, long timeout, TimeUnit unit) throws InterruptedException
offer in interface BlockingDeque<V>offer in interface BlockingQueue<V>InterruptedExceptionpublic RFuture<V> takeAsync()
RBlockingQueueAsynctakeAsync in interface RBlockingQueueAsync<V>public V take() throws InterruptedException
take in interface BlockingDeque<V>take in interface BlockingQueue<V>InterruptedExceptionpublic RFuture<V> pollAsync(long timeout, TimeUnit unit)
RBlockingQueueAsyncpollAsync in interface RBlockingQueueAsync<V>timeout - how long to wait before giving up, in units of
unitunit - a TimeUnit determining how to interpret the
timeout parameternull if the
specified waiting time elapses before an element is availablepublic V poll(long timeout, TimeUnit unit) throws InterruptedException
poll in interface BlockingDeque<V>poll in interface BlockingQueue<V>InterruptedExceptionpublic V pollFromAny(long timeout, TimeUnit unit, String... queueNames) throws InterruptedException
RBlockingQueuepollFromAny in interface RBlockingQueue<V>timeout - how long to wait before giving up, in units of
unitunit - a TimeUnit determining how to interpret the
timeout parameterqueueNames - - queue names. Queue name itself is always includednull if the
specified waiting time elapses before an element is availableInterruptedException - if interrupted while waitingpublic RFuture<V> pollLastAndOfferFirstToAsync(String queueName, long timeout, TimeUnit unit)
RBlockingQueueAsyncqueueName,
waiting up to the specified wait time if necessary for an element to become available.pollLastAndOfferFirstToAsync in interface RBlockingQueueAsync<V>queueName - - names of destination queuetimeout - how long to wait before giving up, in units of
unitunit - a TimeUnit determining how to interpret the
timeout parameternull if the
specified waiting time elapses before an element is availablepublic V pollLastAndOfferFirstTo(String queueName, long timeout, TimeUnit unit) throws InterruptedException
RBlockingQueuequeueName,
waiting up to the specified wait time if necessary for an element to become available.pollLastAndOfferFirstTo in interface RBlockingQueue<V>queueName - - names of destination queuetimeout - how long to wait before giving up, in units of
unitunit - a TimeUnit determining how to interpret the
timeout parameternull if the
specified waiting time elapses before an element is availableInterruptedException - if interrupted while waitingpublic V takeLastAndOfferFirstTo(String queueName) throws InterruptedException
RBlockingQueuequeueName,
waiting if necessary for an element to become available
in any of defined queues including queue itself.takeLastAndOfferFirstTo in interface RBlockingQueue<V>queueName - - names of destination queuenull if the
specified waiting time elapses before an element is availableInterruptedException - if interrupted while waitingpublic int subscribeOnElements(Consumer<V> consumer)
RBlockingQueueRBlockingQueueAsync.takeAsync() method to get a new element.subscribeOnElements in interface RBlockingQueue<V>consumer - - queue elements listenerpublic void unsubscribe(int listenerId)
RBlockingQueueunsubscribe in interface RBlockingQueue<V>listenerId - - id of listenerpublic RFuture<V> takeLastAndOfferFirstToAsync(String queueName)
RBlockingQueueAsyncqueueName,
waiting if necessary for an element to become available
in any of defined queues including queue itself.takeLastAndOfferFirstToAsync in interface RBlockingQueueAsync<V>queueName - - names of destination queuenull if the
specified waiting time elapses before an element is availablepublic int remainingCapacity()
remainingCapacity in interface BlockingQueue<V>public int drainTo(Collection<? super V> c)
drainTo in interface BlockingQueue<V>public RFuture<Integer> drainToAsync(Collection<? super V> c)
RBlockingQueueAsyncc may result in elements being in neither,
either or both collections when the associated exception is
thrown. Attempts to drain a queue to itself result in
IllegalArgumentException. Further, the behavior of
this operation is undefined if the specified collection is
modified while the operation is in progress.drainToAsync in interface RBlockingQueueAsync<V>c - the collection to transfer elements intopublic int drainTo(Collection<? super V> c, int maxElements)
drainTo in interface BlockingQueue<V>public RFuture<Integer> drainToAsync(Collection<? super V> c, int maxElements)
RBlockingQueueAsyncc may result in elements being in neither,
either or both collections when the associated exception is
thrown. Attempts to drain a queue to itself result in
IllegalArgumentException. Further, the behavior of
this operation is undefined if the specified collection is
modified while the operation is in progress.drainToAsync in interface RBlockingQueueAsync<V>c - the collection to transfer elements intomaxElements - the maximum number of elements to transferpublic RFuture<Boolean> offerAsync(V e)
RQueueAsyncofferAsync in interface RQueueAsync<V>offerAsync in class RedissonPriorityQueue<V>e - the element to addtrue if successful, or falsepublic RFuture<List<V>> pollAsync(int limit)
RQueueAsynclimit param.pollAsync in interface RQueueAsync<V>pollAsync in class RedissonPriorityQueue<V>public RFuture<V> pollFromAnyAsync(long timeout, TimeUnit unit, String... queueNames)
RBlockingQueueAsyncpollFromAnyAsync in interface RBlockingQueueAsync<V>timeout - how long to wait before giving up, in units of
unitunit - a TimeUnit determining how to interpret the
timeout parameterqueueNames - - queue names. Queue name itself is always includednull if the
specified waiting time elapses before an element is availablepublic RFuture<Void> putAsync(V e)
RBlockingQueueAsyncputAsync in interface RBlockingQueueAsync<V>e - the element to addpublic RFuture<Void> putFirstAsync(V e)
RBlockingDequeAsyncputFirstAsync in interface RBlockingDequeAsync<V>e - valuepublic RFuture<Void> putLastAsync(V e)
RBlockingDequeAsyncputLastAsync in interface RBlockingDequeAsync<V>e - valuepublic void putFirst(V e) throws InterruptedException
putFirst in interface BlockingDeque<V>InterruptedExceptionpublic void putLast(V e) throws InterruptedException
putLast in interface BlockingDeque<V>InterruptedExceptionpublic boolean offerFirst(V e, long timeout, TimeUnit unit) throws InterruptedException
offerFirst in interface BlockingDeque<V>InterruptedExceptionpublic boolean offerLast(V e, long timeout, TimeUnit unit) throws InterruptedException
offerLast in interface BlockingDeque<V>InterruptedExceptionpublic V takeFirst() throws InterruptedException
takeFirst in interface BlockingDeque<V>InterruptedExceptionpublic RFuture<V> takeFirstAsync()
RBlockingDequeAsynctakeFirstAsync in interface RBlockingDequeAsync<V>public RFuture<V> takeLastAsync()
RBlockingDequeAsynctakeLastAsync in interface RBlockingDequeAsync<V>public V takeLast() throws InterruptedException
takeLast in interface BlockingDeque<V>InterruptedExceptionpublic RFuture<V> pollFirstAsync(long timeout, TimeUnit unit)
RBlockingDequeAsynctimeout for an element become available.pollFirstAsync in interface RBlockingDequeAsync<V>timeout - how long to wait before giving up, in units of
unitunit - a TimeUnit determining how to interpret the
timeout parameternull if the
specified waiting time elapses before an element is availablepublic V pollFirstFromAny(long timeout, TimeUnit unit, String... queueNames) throws InterruptedException
RBlockingDequepollFirstFromAny in interface RBlockingDeque<V>timeout - how long to wait before giving up, in units of
unitunit - a TimeUnit determining how to interpret the
timeout parameterqueueNames - - names of queuenull if the
specified waiting time elapses before an element is availableInterruptedException - if interrupted while waitingpublic RFuture<V> pollFirstFromAnyAsync(long timeout, TimeUnit unit, String... queueNames)
RBlockingDequeAsyncpollFirstFromAnyAsync in interface RBlockingDequeAsync<V>timeout - how long to wait before giving up, in units of
unitunit - a TimeUnit determining how to interpret the
timeout parameterqueueNames - - names of queuenull if the
specified waiting time elapses before an element is availablepublic V pollLastFromAny(long timeout, TimeUnit unit, String... queueNames) throws InterruptedException
RBlockingDequepollLastFromAny in interface RBlockingDeque<V>timeout - how long to wait before giving up, in units of
unitunit - a TimeUnit determining how to interpret the
timeout parameterqueueNames - - names of queuenull if the
specified waiting time elapses before an element is availableInterruptedException - if interrupted while waitingpublic int subscribeOnFirstElements(Consumer<V> consumer)
RBlockingDequeRBlockingDequeAsync.takeFirstAsync() method to get a new element.subscribeOnFirstElements in interface RBlockingDeque<V>consumer - - queue elements listenerpublic int subscribeOnLastElements(Consumer<V> consumer)
RBlockingDequeRBlockingDequeAsync.takeLastAsync() method to get a new element.subscribeOnLastElements in interface RBlockingDeque<V>consumer - - queue elements listenerpublic RFuture<V> pollLastFromAnyAsync(long timeout, TimeUnit unit, String... queueNames)
RBlockingDequeAsyncpollLastFromAnyAsync in interface RBlockingDequeAsync<V>timeout - how long to wait before giving up, in units of
unitunit - a TimeUnit determining how to interpret the
timeout parameterqueueNames - - names of queuenull if the
specified waiting time elapses before an element is availablepublic V pollFirst(long timeout, TimeUnit unit) throws InterruptedException
pollFirst in interface BlockingDeque<V>InterruptedExceptionpublic RFuture<V> pollLastAsync(long timeout, TimeUnit unit)
RBlockingDequeAsynctimeout for an element become available.pollLastAsync in interface RBlockingDequeAsync<V>timeout - how long to wait before giving up, in units of
unitunit - a TimeUnit determining how to interpret the
timeout parameternull if the
specified waiting time elapses before an element is availablepublic V pollLast(long timeout, TimeUnit unit) throws InterruptedException
pollLast in interface BlockingDeque<V>InterruptedExceptionpublic List<V> poll(int limit)
RQueuelimit param.public List<V> pollLast(int limit)
RDequelimit param.public List<V> pollFirst(int limit)
RDequelimit param.public RFuture<List<V>> pollFirstAsync(int limit)
RDequeAsynclimit param.pollFirstAsync in interface RDequeAsync<V>pollFirstAsync in class RedissonPriorityDeque<V>public RFuture<List<V>> pollLastAsync(int limit)
RDequeAsynclimit param.pollLastAsync in interface RDequeAsync<V>pollLastAsync in class RedissonPriorityDeque<V>public V move(Duration timeout, DequeMoveArgs args)
move in interface RBlockingDeque<V>public RFuture<V> moveAsync(Duration timeout, DequeMoveArgs args)
moveAsync in interface RBlockingDequeAsync<V>public 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 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 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 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.