Go: Get Goroutine ID

 

复制代码
func GetGoroutineID() int {
    var buf = make([]byte, 128)
    b := runtime.Stack(buf, false)
    idField := strings.Fields(strings.TrimPrefix(string(buf[:b]), "goroutine "))[0]
    id, err := strconv.Atoi(idField)
    if err != nil {
        panic(fmt.Sprintf("cannot get goroutine id: %v", err))
    }
    return id
}
复制代码

 

posted @   ascertain  阅读(15)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
历史上的今天:
2021-03-17 运动函数
点击右上角即可分享
微信分享提示