public void link() {
            // we could use the control here, but there's no reason as it is use externally and we only
            // really want to measure the ping method
            Integer e = in.poll();
            if (e != null) {
                out.offer(e);
            }
        }
Link in the chain passes events from chain[threadIndex] to chain[(id + 1) % CHAIN_LENGTH].
<p>
Note that while the state is per thread, the thread can change per iteration. We use the above thread
id to maintain the same queues are selected per thread.
jctools-benchmarks/src/main/java/org/jctools/jmh/latency/spsc/RingBurstRoundTripWithGroups.java