1
0
mirror of https://github.com/golang/go synced 2024-11-23 15:30:05 -07:00

os/exec: Stdout/Stderr doc cleanup.

Following comments on CL 76320.

Breaks Cmd.Std{out,err} doc into three paragraphs and updates Cmd.Stdin
formatting to match.

Fixes an erroneous reference to Stdin in the output goroutine comment, while
keeping the wording consistent between Stdin and Stdout/Stderr.

Change-Id: I186a0e2d4b85dfb939443a17e62a1eb2ef64b1bf
Reviewed-on: https://go-review.googlesource.com/79595
Reviewed-by: Rob Pike <r@golang.org>
This commit is contained in:
Tom Lanyon 2017-11-23 12:21:25 +11:00 committed by Rob Pike
parent e22d79ec1d
commit c866110689

View File

@ -77,9 +77,12 @@ type Cmd struct {
Dir string
// Stdin specifies the process's standard input.
//
// If Stdin is nil, the process reads from the null device (os.DevNull).
//
// If Stdin is an *os.File, the process's standard input is connected
// directly to that file.
//
// Otherwise, during the execution of the command a separate
// goroutine reads from Stdin and delivers that data to the command
// over a pipe. In this case, Wait does not complete until the goroutine
@ -92,14 +95,13 @@ type Cmd struct {
// If either is nil, Run connects the corresponding file descriptor
// to the null device (os.DevNull).
//
// If either is an *os.File, the process's standard output or standard
// error, respectively, are connected directly to that file. Otherwise,
// if either is not nil, during the execution of the command a separate
// goroutine reads from the process's standard output or standard error
// and delivers that to Stdout or Stderr. In this case, Wait does not
// complete until the goroutine stops copying, either because it has
// reached the end of Stdin (EOF or a read error) or because writing to
// the pipe returned an error.
// If either is an *os.File, the corresponding output from the process
// is connected directly to that file.
//
// Otherwise, during the execution of the command a separate goroutine
// reads from the process over a pipe and delivers that data to the
// corresponding Writer. In this case, Wait does not complete until the
// goroutine reaches EOF or encounters an error.
//
// If Stdout and Stderr are the same writer, and have a type that can
// be compared with ==, at most one goroutine at a time will call Write.