blob: ec32ab7c5f9ce609e453775c8985be2324dd2d5a [file] [log] [blame]
package main
import "github.com/smartystreets/go-disruptor"
func publish(writer *disruptor.SharedWriter) {
for {
// TODO: return lower, upper instead? or some kind of struct "Reservation"
// upon which commit can be invoked?
if sequence := writer.Reserve(ItemsToPublish); sequence != disruptor.Gating {
ringBuffer[sequence&RingMask] = sequence
writer.Commit(sequence, sequence+ItemsToPublish-1)
}
}
}