我在哪里可以找到Go运行时goroutines规范?

时间:2017-09-02 18:29:40

标签: multithreading go goroutine

运行一个相当简单的Go程序后:

package main

import (
    "fmt"
    "os"
    "os/signal"
    "syscall"
)

func main() {
    sigs := make(chan os.Signal)

    signal.Notify(sigs, syscall.SIGINT, syscall.SIGTERM)

    fmt.Printf("awaiting signal at %d\n", os.Getpid())
    <-sigs
    fmt.Printf("\nexiting\n")
}

我可以观察到在我的系统上创建了以下线程(由top -H找到以列出除进程之外的线程):

 3949 USER    20   0    3232   1400   1032 S  0.0  0.0   0:00.00 goroutines1
 3950 USER    20   0    3232   1400   1032 S  0.0  0.0   0:00.00 goroutines1
 3951 USER    20   0    3232   1400   1032 S  0.0  0.0   0:00.00 goroutines1
 3952 USER    20   0    3232   1400   1032 S  0.0  0.0   0:00.00 goroutines1
 3953 USER    20   0    3232   1400   1032 S  0.0  0.0   0:00.00 goroutines1

PID 3949是主线​​程。

在哪里可以找到有关Go运行时运行的其他4个线程的规范/信息?

0 个答案:

没有答案