我正在尝试在主线程中与无限循环同时运行 goroutine(go 版本 go1.4.1 darwin/amd64),但我无法使其正常工作。如果我理解正确,如果我指定了 GOMAXPROCS,go 应该将 goroutine 安排到其他线程,但它不会。即使我LockOSThread()在 main 中明确写入,我仍然看不到输出。如何让 go 在单独的操作系统线程中运行 goroutine?
package main
import(
"fmt"
"time"
"runtime"
)
func main() {
runtime.GOMAXPROCS(runtime.NumCPU() * 8)
go func() {
for {
time.Sleep(1 * time.Second)
fmt.Println("From routine")
}
}()
for {}
}
智慧大石
ITMISS
随时随地看视频慕课网APP
相关分类