aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Glasser <glasser@meteor.com>2016-08-04 16:49:05 -0700
committerBrad Fitzpatrick <bradfitz@golang.org>2016-09-02 05:16:21 +0000
commit82bc0d4e80870f25805029ef0e1e844ace7bf068 (patch)
tree77ad8c8089e4c9afe39d4522f00f7e54e7ec7e82
parent98def53f5610247b3d635ff85bf47fd19e848c01 (diff)
downloadgo-82bc0d4e80870f25805029ef0e1e844ace7bf068.tar.xz
math/rand: document that NewSource sources race
While it was previously explicitly documented that "the default Source" is safe for concurrent use, a careless reader can interpret that as meaning "the implementation of the Source interface created by functions in this package" rather than "the default shared Source used by top-level functions". Be explicit that the Source returned by NewSource is not safe for use by multiple goroutines. Fixes #3611. Change-Id: Iae4bc04c3887ad6e2491e36e38feda40324022c5 Reviewed-on: https://go-review.googlesource.com/25501 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-rw-r--r--src/math/rand/rand.go2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/math/rand/rand.go b/src/math/rand/rand.go
index dd8d43cca1..5b271e62a2 100644
--- a/src/math/rand/rand.go
+++ b/src/math/rand/rand.go
@@ -24,6 +24,8 @@ type Source interface {
}
// NewSource returns a new pseudo-random Source seeded with the given value.
+// Unlike the default Source used by top-level functions, this source is not
+// safe for concurrent use by multiple goroutines.
func NewSource(seed int64) Source {
var rng rngSource
rng.Seed(seed)