Class ConcurrentCircularFifoBuffer<T>

java.lang.Object
io.github.resilience4j.circularbuffer.ConcurrentCircularFifoBuffer<T>
All Implemented Interfaces:
CircularFifoBuffer<T>

public class ConcurrentCircularFifoBuffer<T>
extends java.lang.Object
implements CircularFifoBuffer<T>
Thread safe implementation of CircularFifoBuffer on top of ConcurrentEvictingQueue
  • Constructor Summary

    Constructors 
    Constructor Description
    ConcurrentCircularFifoBuffer​(int capacity)
    Creates an ConcurrentCircularFifoBuffer with the given (fixed) capacity
  • Method Summary

    Modifier and Type Method Description
    void add​(T element)
    Adds element to the CircularFifoBuffer and overwrites the oldest element when CircularFifoBuffer.isFull().
    boolean isEmpty()
    Returns true if this CircularFifoBuffer contains no elements.
    boolean isFull()
    Returns true if this CircularFifoBuffer is full.
    int size()
    Returns the number of elements in this CircularFifoBuffer.
    io.vavr.control.Option<T> take()
    Retrieves and removes the head of this queue, or returns Option.None if this queue is empty.
    io.vavr.collection.List<T> toList()
    Returns a list containing all of the elements in this CircularFifoBuffer.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait