Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewNopWriteCloser ¶
func NewNopWriteCloser(w io.Writer) io.WriteCloser
NewNopWriteCloser creates the nopWriteCloser from a writer.
func NewWrapReadCloser ¶
func NewWrapReadCloser(r io.Reader) io.ReadCloser
NewWrapReadCloser creates a wrapReadCloser from a reader. NOTE(random-liu): To avoid goroutine leakage, the reader passed in must be eventually closed by the caller.
func NewWriteCloseInformer ¶
func NewWriteCloseInformer(wc io.WriteCloser) (io.WriteCloser, <-chan struct{})
NewWriteCloseInformer creates the writeCloseInformer from a write closer.
Types ¶
type WriterGroup ¶
type WriterGroup struct {
// contains filtered or unexported fields
}
WriterGroup is a group of writers. Writer could be dynamically added and removed.
func NewWriterGroup ¶
func NewWriterGroup() *WriterGroup
NewWriterGroup creates an empty writer group.
func (*WriterGroup) Add ¶
func (g *WriterGroup) Add(key string, w io.WriteCloser)
Add adds a writer into the group. The writer will be closed if the writer group is closed.
func (*WriterGroup) Close ¶
func (g *WriterGroup) Close()
Close closes the writer group. Write will return error after closed.
func (*WriterGroup) Get ¶
func (g *WriterGroup) Get(key string) io.WriteCloser
Get gets a writer from the group, returns nil if the writer doesn't exist.
func (*WriterGroup) Remove ¶
func (g *WriterGroup) Remove(key string)
Remove removes a writer from the group.