split

package
v0.33.0 Latest Latest
Warning

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

Go to latest
Published: Nov 17, 2021 License: BSD-3-Clause Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Proc

type Proc struct {
	// contains filtered or unexported fields
}

func (*Proc) Done

func (p *Proc) Done()

func (*Proc) Pull

func (p *Proc) Pull() (zbuf.Batch, error)

type Splitter

type Splitter struct {
	// contains filtered or unexported fields
}

Splitter splits its input into multiple proc outputs. Since procs run from the receiver backward via Pull(), SplitProc pulls data from upstream when all the outputs are ready, then sends the data downstream.

This scheme implements flow control since the SplitProc prevents any of the downstream from running ahead, esentially running the parallel paths at the rate of the slowest consumer.

func New

func New(parent proc.Interface) *Splitter

func (*Splitter) Add

func (s *Splitter) Add() chan (chan<- proc.Result)

func (*Splitter) NewProc

func (s *Splitter) NewProc() *Proc

Jump to

Keyboard shortcuts

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