Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hyfather/pipeline
Pipelines using goroutines
https://github.com/hyfather/pipeline
concurrency go pipeline
Last synced: about 2 months ago
JSON representation
Pipelines using goroutines
- Host: GitHub
- URL: https://github.com/hyfather/pipeline
- Owner: hyfather
- License: mit
- Created: 2018-04-25T00:11:36.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2021-11-02T22:47:16.000Z (about 3 years ago)
- Last Synced: 2024-07-31T20:48:43.282Z (5 months ago)
- Topics: concurrency, go, pipeline
- Language: Go
- Homepage: https://godoc.org/github.com/hyfather/pipeline
- Size: 10.7 KB
- Stars: 56
- Watchers: 4
- Forks: 9
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-go - pipeline - An implementation of pipelines with fan-in and fan-out. (Data Structures and Algorithms / Pipes)
- awesome-go - pipeline - Pipelines using goroutines - ★ 6 (Data Structures)
- awesome-go-extra - pipeline - 04-25T00:11:36Z|2021-11-02T22:47:16Z| (Generators / Pipes)
README
[![GoDoc](https://godoc.org/github.com/hyfather/pipeline?status.svg)](https://godoc.org/github.com/hyfather/pipeline)
[![Build Status](https://travis-ci.org/hyfather/pipeline.svg?branch=master)](https://travis-ci.org/hyfather/pipeline)
[![cover.run](https://cover.run/go/github.com/hyfather/pipeline.svg?style=flat&tag=golang-1.10)](https://cover.run/go?tag=golang-1.10&repo=github.com%2Fhyfather%2Fpipeline)
[![Go Report Card](https://goreportcard.com/badge/github.com/hyfather/pipeline)](https://goreportcard.com/report/github.com/hyfather/pipeline)# pipeline
This package provides a simplistic implementation of Go pipelines
as outlined in [Go Concurrency Patterns: Pipelines and cancellation.](https://blog.golang.org/pipelines)# Docs
GoDoc available [here.](https://godoc.org/github.com/hyfather/pipeline)# Example Usage
```
import "github.com/hyfather/pipeline"p := pipeline.New()
p.AddStageWithFanOut(myStage, 10)
p.AddStageWithFanOut(anotherStage, 100)
doneChan := p.Run(inChan)<- doneChan
```More comprehensive examples can be found [here.](./examples)