From a9b49537771c05b82923a256a47b73af98c3e87e Mon Sep 17 00:00:00 2001 From: =?utf8?q?Alexander=20D=C3=B6ring?= Date: Sun, 2 Oct 2016 21:07:40 +0200 Subject: [PATCH] os/exec: add example for CommandContext Updates #16360 Change-Id: I0e0afe7a89f2ebcb3e5bbc345f77a605d3afc398 Reviewed-on: https://go-review.googlesource.com/30103 Reviewed-by: Brad Fitzpatrick Run-TryBot: Brad Fitzpatrick TryBot-Result: Gobot Gobot --- src/os/exec/example_test.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/os/exec/example_test.go b/src/os/exec/example_test.go index a38e2889e6..5ccb21af6a 100644 --- a/src/os/exec/example_test.go +++ b/src/os/exec/example_test.go @@ -6,6 +6,7 @@ package exec_test import ( "bytes" + "context" "encoding/json" "fmt" "io" @@ -13,6 +14,7 @@ import ( "log" "os/exec" "strings" + "time" ) func ExampleLookPath() { @@ -123,3 +125,13 @@ func ExampleCmd_CombinedOutput() { } fmt.Printf("%s\n", stdoutStderr) } + +func ExampleCommandContext() { + ctx, cancel := context.WithTimeout(context.Background(), 100*time.Millisecond) + defer cancel() + + if err := exec.CommandContext(ctx, "sleep", "5").Run(); err != nil { + // This will fail after 100 milliseconds. The 5 second sleep + // will be interrupted. + } +} -- 2.48.1