build: Index | Files

package livelog

import ""

Package livelog provides a buffer that can be simultaneously written to by one writer and read from by many readers.


Package Files



const MaxBufferSize = 2 << 20 // 2MB of output is way more than we expect.

type Buffer Uses

type Buffer struct {
    // contains filtered or unexported fields

Buffer is a WriteCloser that provides multiple Readers that each yield the same data. It is safe to Write to a Buffer while Readers consume that data. Its zero value is a ready-to-use buffer.

func (*Buffer) Bytes Uses

func (b *Buffer) Bytes() []byte

Bytes returns a copy of the underlying buffer.

func (*Buffer) Close Uses

func (b *Buffer) Close() error

Close signals EOF to all Readers.

func (*Buffer) Reader Uses

func (b *Buffer) Reader() io.ReadCloser

Reader initializes and returns a ReadCloser that will emit the entire buffer. It is safe to call Read and Close concurrently.

func (*Buffer) String Uses

func (b *Buffer) String() string

String returns a copy of the underlying buffer as a string.

func (*Buffer) Write Uses

func (b *Buffer) Write(b2 []byte) (int, error)

Write appends data to the Buffer. It will wake any blocked Readers.

Package livelog imports 2 packages (graph) and is imported by 1 packages. Updated 2021-01-22. Refresh now. Tools for package owners.