mirror of
https://github.com/golang/go
synced 2024-11-22 09:24:41 -07:00
test: adjust a test to work with js/wasm's background goroutine
Fixes #34768 Change-Id: Ic73591f620cdee5bc7203483902e6ba98d2c442b Reviewed-on: https://go-review.googlesource.com/c/go/+/200438 Reviewed-by: Bryan C. Mills <bcmills@google.com>
This commit is contained in:
parent
26ff21d44d
commit
6dc740f092
@ -9,13 +9,24 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"log"
|
||||
"runtime"
|
||||
"time"
|
||||
)
|
||||
|
||||
func main() {
|
||||
numg0 := runtime.NumGoroutine()
|
||||
deadline := time.Now().Add(10 * time.Second)
|
||||
go println(42, true, false, true, 1.5, "world", (chan int)(nil), []int(nil), (map[string]int)(nil), (func())(nil), byte(255))
|
||||
for runtime.NumGoroutine() > 1 {
|
||||
time.Sleep(10*time.Millisecond)
|
||||
for {
|
||||
numg := runtime.NumGoroutine()
|
||||
if numg > numg0 {
|
||||
if time.Now().After(deadline) {
|
||||
log.Fatalf("%d goroutines > initial %d after deadline", numg, numg0)
|
||||
}
|
||||
runtime.Gosched()
|
||||
continue
|
||||
}
|
||||
break
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user