Class ProducerImpl.OpSendMsgQueue

  • All Implemented Interfaces:
    java.lang.Iterable<ProducerImpl.OpSendMsg>
    Enclosing class:
    ProducerImpl<T>

    protected static class ProducerImpl.OpSendMsgQueue
    extends java.lang.Object
    implements java.lang.Iterable<ProducerImpl.OpSendMsg>
    Queue implementation that is used as the pending messages queue. This implementation postpones adding of new OpSendMsg entries that happen while the forEach call is in progress. This is needed for preventing ConcurrentModificationExceptions that would occur when the forEach action calls the add method via a callback in user code. This queue is not thread safe.