X7ROOT File Manager
Current Path:
/opt/golang/1.22.0/src/runtime/race/testdata
opt
/
golang
/
1.22.0
/
src
/
runtime
/
race
/
testdata
/
📁
..
📄
atomic_test.go
(4.9 KB)
📄
cgo_test.go
(497 B)
📄
cgo_test_main.go
(415 B)
📄
chan_test.go
(10.97 KB)
📄
comp_test.go
(2.25 KB)
📄
finalizer_test.go
(1.05 KB)
📄
io_test.go
(1.29 KB)
📄
issue12225_test.go
(455 B)
📄
issue12664_test.go
(1.08 KB)
📄
issue13264_test.go
(310 B)
📄
map_test.go
(5.12 KB)
📄
mop_test.go
(28.87 KB)
📄
mutex_test.go
(1.98 KB)
📄
pool_test.go
(933 B)
📄
reflect_test.go
(811 B)
📄
regression_test.go
(2.74 KB)
📄
rwmutex_test.go
(2.08 KB)
📄
select_test.go
(4.07 KB)
📄
slice_test.go
(8.87 KB)
📄
sync_test.go
(2.96 KB)
📄
waitgroup_test.go
(5.27 KB)
Editing: io_test.go
// 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 race_test import ( "fmt" "net" "net/http" "os" "path/filepath" "sync" "testing" "time" ) func TestNoRaceIOFile(t *testing.T) { x := 0 path := t.TempDir() fname := filepath.Join(path, "data") go func() { x = 42 f, _ := os.Create(fname) f.Write([]byte("done")) f.Close() }() for { f, err := os.Open(fname) if err != nil { time.Sleep(1e6) continue } buf := make([]byte, 100) count, err := f.Read(buf) if count == 0 { time.Sleep(1e6) continue } break } _ = x } var ( regHandler sync.Once handlerData int ) func TestNoRaceIOHttp(t *testing.T) { regHandler.Do(func() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { handlerData++ fmt.Fprintf(w, "test") handlerData++ }) }) ln, err := net.Listen("tcp", "127.0.0.1:0") if err != nil { t.Fatalf("net.Listen: %v", err) } defer ln.Close() go http.Serve(ln, nil) handlerData++ _, err = http.Get("http://" + ln.Addr().String()) if err != nil { t.Fatalf("http.Get: %v", err) } handlerData++ _, err = http.Get("http://" + ln.Addr().String()) if err != nil { t.Fatalf("http.Get: %v", err) } handlerData++ }
Upload File
Create Folder