goprocessctx

package
Version: v0.2.3 Latest Latest
Warning

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

Go to latest
Published: Feb 27, 2015 License: MIT, MIT Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func WaitForContext

func WaitForContext(ctx context.Context, p goprocess.Process)

WaitForContext makes p WaitFor ctx. When Closing, p waits for ctx.Done(), before being Closed(). It is simply:

p.WaitFor(goprocess.WithContext(ctx))

func WithContext

func WithContext(ctx context.Context) goprocess.Process

WithContext constructs and returns a Process that respects given context. It is the equivalent of:

func ProcessWithContext(ctx context.Context) goprocess.Process {
  p := goprocess.WithParent(goprocess.Background())
  go func() {
    <-ctx.Done()
    p.Close()
  }()
  return p
}

func WithProcessClosed

func WithProcessClosed(ctx context.Context, p goprocess.Process) context.Context

WithProcessClosed returns a context.Context that is cancelled after Process p is Closed. It is the equivalent of:

func WithProcessClosed(ctx context.Context, p goprocess.Process) context.Context {
  ctx, cancel := context.WithCancel(ctx)
  go func() {
    <-p.Closed()
    cancel()
  }()
  return ctx
}

func WithProcessClosing

func WithProcessClosing(ctx context.Context, p goprocess.Process) context.Context

WithProcessClosing returns a context.Context derived from ctx that is cancelled as p is Closing (after: <-p.Closing()). It is simply:

func WithProcessClosing(ctx context.Context, p goprocess.Process) context.Context {
  ctx, cancel := context.WithCancel(ctx)
  go func() {
    <-p.Closing()
    cancel()
  }()
  return ctx
}

Types

This section is empty.

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto
y or Y : Canonical URL