diff options
Diffstat (limited to 'src/pkg/sync/example_test.go')
-rw-r--r-- | src/pkg/sync/example_test.go | 59 |
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 -} |