summaryrefslogtreecommitdiff
path: root/src/pkg/sync/example_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/pkg/sync/example_test.go')
-rw-r--r--src/pkg/sync/example_test.go59
1 files changed, 0 insertions, 59 deletions
diff --git a/src/pkg/sync/example_test.go b/src/pkg/sync/example_test.go
deleted file mode 100644
index bdd3af6fe..000000000
--- a/src/pkg/sync/example_test.go
+++ /dev/null
@@ -1,59 +0,0 @@
-// Copyright 2012 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-package sync_test
-
-import (
- "fmt"
- "sync"
-)
-
-type httpPkg struct{}
-
-func (httpPkg) Get(url string) {}
-
-var http httpPkg
-
-// This example fetches several URLs concurrently,
-// using a WaitGroup to block until all the fetches are complete.
-func ExampleWaitGroup() {
- var wg sync.WaitGroup
- var urls = []string{
- "http://www.golang.org/",
- "http://www.google.com/",
- "http://www.somestupidname.com/",
- }
- for _, url := range urls {
- // Increment the WaitGroup counter.
- wg.Add(1)
- // Launch a goroutine to fetch the URL.
- go func(url string) {
- // Decrement the counter when the goroutine completes.
- defer wg.Done()
- // Fetch the URL.
- http.Get(url)
- }(url)
- }
- // Wait for all HTTP fetches to complete.
- wg.Wait()
-}
-
-func ExampleOnce() {
- var once sync.Once
- onceBody := func() {
- fmt.Println("Only once")
- }
- done := make(chan bool)
- for i := 0; i < 10; i++ {
- go func() {
- once.Do(onceBody)
- done <- true
- }()
- }
- for i := 0; i < 10; i++ {
- <-done
- }
- // Output:
- // Only once
-}