• Stars
    star
    168
  • Rank 218,806 (Top 5 %)
  • Language
    Go
  • License
    MIT License
  • Created about 10 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Golang circular (ring) buffer

circbuf

This repository provides the circbuf package. This provides a Buffer object which is a circular (or ring) buffer. It has a fixed size, but can be written to infinitely. Only the last size bytes are ever retained. The buffer implements the io.Writer interface.

Documentation

Full documentation can be found on Godoc

Usage

The circbuf package is very easy to use:

buf, _ := NewBuffer(6)
buf.Write([]byte("hello world"))

if string(buf.Bytes()) != " world" {
    panic("should only have last 6 bytes!")
}

More Repositories

1

go-socks5

SOCKS5 server in Golang
Go
1,844
star
2

bloomd

C network daemon for bloom filters
C
1,238
star
3

go-radix

Golang implementation of Radix trees
Go
850
star
4

libart

Adaptive Radix Trees implemented in C
C
745
star
5

hlld

C network daemon for HyperLogLogs
C
446
star
6

go-proxyproto

Golang package to handle HAProxy Proxy Protocol
Go
199
star
7

relay

Golang framework for simple message passing using an AMQP broker
Go
130
star
8

go-chord

Golang implementation of the Chord protocol
Go
130
star
9

consul-api

Golang API client for Consul
Go
123
star
10

erl-rstar

An Erlang implementation of the R*-tree spacial data structure
Erlang
59
star
11

pypred

A Python library for simple evaluation of natural language predicates
Python
57
star
12

c-minheap-array

Implements a Min-Heap / Priority Queue in C using a simple array.
C
54
star
13

counterd

A lightweight daemon for counting unique events using Redis and PostgreSQL
Go
35
star
14

consul-kv

Golang K/V client for Consul
Go
33
star
15

DjangoProjectExample

An example Django project
Python
28
star
16

c-minheap-indirect

Implements a Min-Heap / Priority Queue in C using an indirection table for memory efficiency.
C
28
star
17

go-hlld

Golang client for HyperLogLog daemon (hlld)
Go
21
star
18

cse473-ai-csp

A Constraint Satisfaction Solver (CSP) using Backtracking and Forward Checking
Java
21
star
19

cuda-hll

A CUDA accelerated utility for using HyperLogLog's for cardinality estimation
18
star
20

teles

An Erlang network service for manipulating geographic data
Erlang
15
star
21

bloomd_ring

Provides a Riak core interface to bloomd to allow for horizontal scalability and high availability
Erlang
14
star
22

Erlang-Naive-Bayes-Movies

An Erlang naive bayes text classifier to classify movie reviews as positive or negative.
Erlang
13
star
23

pyhlld

A Python driver for the hlld server
Python
10
star
24

ememcached

An Erlang Implementation of the Memcached binary protocol
Erlang
9
star
25

erl-bloomd

An Erlang driver for speaking the Bloomd network protocol
Erlang
8
star
26

DotFiles

Misc. dot files
Vim Script
3
star
27

pyteles

A Python client for the Teles server
Python
1
star