ringbuffer

package
v0.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 26, 2024 License: MIT Imports: 1 Imported by: 0

Documentation

Overview

Package ringbuffer ring buffer 无锁循环缓冲区(线程安全),首尾相接的循环数组,详见算法

Example Usage

rb := ringbuffer.Get()
defer ringbuffer.Put(rb)
rb.WriteString("hello")
b := make([]byte, 10)
// 改变读指针位置,不改变使用 LazyRead
n, err := rb.Read(b) // n = 5; b = []byte("hello")

Index

Constants

This section is empty.

Variables

View Source
var (
	// Get 从池子中获取一个空的 ring buffer
	Get = ringbuffer3rd.Get

	// Put 返回一个 ring buffer 回到池子中
	Put = func(b *RingBuffer) {
		if b != nil {
			ringbuffer3rd.Put(b)
		}
	}
)

Functions

This section is empty.

Types

type RingBuffer

type RingBuffer = ringbuffer3rd.RingBuffer

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL