Class ThreadRobustList<T>

  • All Implemented Interfaces:
    Iterable<T>

    public class ThreadRobustList<T>
    extends Object
    implements Iterable<T>
    A list which tolerates concurrent adds from one other thread while it is read. More precisely: This list is guaranteed to provide a self-consistent read view regardless of the internal order in which the primitive mutating operations on it are observed from the reading thread.

    This is useful for traced information as there may be timed out threads working on the structure after it is returned upwards for consumption.

    Since:
    4.2
    Author:
    Steinar Knutsen, bratseth
    • Constructor Detail

      • ThreadRobustList

        public ThreadRobustList()
      • ThreadRobustList

        public ThreadRobustList​(int initialCapacity)
    • Method Detail

      • add

        public void add​(T item)
      • iterator

        public Iterator<T> iterator()
        Returns an iterator over the elements of this. This iterator does not support remove.
        Specified by:
        iterator in interface Iterable<T>
      • reverseIterator

        public Iterator<T> reverseIterator()
        Returns an iterator over the elements of this, starting at the last element and working backwards. This iterator does not support remove.
      • isEmpty

        public boolean isEmpty()