X7ROOT File Manager
Current Path:
/opt/golang/1.19.4/src/runtime/race
opt
/
golang
/
1.19.4
/
src
/
runtime
/
race
/
📁
..
📄
README
(1.54 KB)
📄
doc.go
(360 B)
📄
output_test.go
(8.48 KB)
📄
race.go
(796 B)
📄
race_linux_amd64.syso
(544.67 KB)
📄
race_linux_test.go
(996 B)
📄
race_test.go
(6.05 KB)
📄
race_unix_test.go
(756 B)
📄
race_windows_test.go
(1.28 KB)
📄
sched_test.go
(972 B)
📄
syso_test.go
(725 B)
📁
testdata
📄
timer_test.go
(576 B)
Editing: sched_test.go
// Copyright 2015 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. //go:build race package race_test import ( "bytes" "fmt" "reflect" "runtime" "testing" ) func TestRandomScheduling(t *testing.T) { // Scheduler is most consistent with GOMAXPROCS=1. // Use that to make the test most likely to fail. defer runtime.GOMAXPROCS(runtime.GOMAXPROCS(1)) const N = 10 out := make([][]int, N) for i := 0; i < N; i++ { c := make(chan int, N) for j := 0; j < N; j++ { go func(j int) { c <- j }(j) } row := make([]int, N) for j := 0; j < N; j++ { row[j] = <-c } out[i] = row } for i := 0; i < N; i++ { if !reflect.DeepEqual(out[0], out[i]) { return // found a different order } } var buf bytes.Buffer for i := 0; i < N; i++ { fmt.Fprintf(&buf, "%v\n", out[i]) } t.Fatalf("consistent goroutine execution order:\n%v", buf.String()) }
Upload File
Create Folder