func (b *AtomicFixedSizeRingBuf) unatomic_advance(n int) {
	if n <= 0 {
		return
	}
	if n > b.readable {
		n = b.readable
	}
	b.readable -= n
	b.Beg = (b.Beg + n) % b.N
}
func (b *AtomicFixedSizeRingBuf) unatomic_advance(n int) {
	if n <= 0 {
		return
	}
	if n > b.readable {
		n = b.readable
	}
	b.readable -= n
	b.Beg = (b.Beg + n) % b.N
}
func ( b * AtomicFixedSizeRingBuf ) unatomic_advance ( n int ) { if n <= 0 { return } if n > b . readable { n = b . readable } b . readable -= n b . Beg = ( b . Beg + n ) % b . N }
// unatomic_advance(): private implementation of Advance() without
// the locks. See Advance() above for description.
// Necessary so that other methods that already hold
// locks can advance, and there are no recursive mutexes
// in Go.
unatomic_advance () : private implementation of Advance () without the locks . See Advance () above for description . Necessary so that other methods that already hold locks can advance and there are no recursive mutexes in Go .