/// <summary> /// Construct a view over a term buffer and state buffer for appending frames. /// </summary> /// <param name="termBuffer"> for where messages are stored. </param> /// <param name="metaDataBuffer"> for where the state of writers is stored manage concurrency. </param> /// <param name="partitionIndex"> for this will be the active appender.</param> public ExclusiveTermAppender(UnsafeBuffer termBuffer, UnsafeBuffer metaDataBuffer, int partitionIndex) { var tailCounterOffset = LogBufferDescriptor.TERM_TAIL_COUNTERS_OFFSET + partitionIndex * BitUtil.SIZE_OF_LONG; metaDataBuffer.BoundsCheck(tailCounterOffset, BitUtil.SIZE_OF_LONG); _termBuffer = termBuffer; _metaDataBuffer = metaDataBuffer; _tailAddressOffset = tailCounterOffset; // TODO divergence }