go程Id retrieve the current goroutine's ID

https://github.com/petermattis/goid


func GoID() int {
var buf [64]byte
n := runtime.Stack(buf[:], false)
// 得到id字符串
idField := strings.Fields(strings.TrimPrefix(string(buf[:n]), "goroutine "))[0]
id, err := strconv.Atoi(idField)
if err != nil {
panic(fmt.Sprintf("cannot get goroutine id: %v", err))
}
return id
}

 

posted @   papering  阅读(25)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
历史上的今天:
2022-03-15 因果推断:效应估计的常用方法及工具变量讨论 https://mp.weixin.qq.com/s/oNu3wim9mXGzW2D9eeq_CQ
2022-03-15 什么是好的技术氛围? https://mp.weixin.qq.com/s/L7vOx8cwJzAmYZCHnrav4w
2022-03-15 a
2022-03-15 58集团IAST/RASP调研与实践:IAST调研
2022-03-15 golang 运行时信息
2021-03-15 关于 JavaScript Object.keys() 排序问题的探索 原创 gq 腾讯IMWeb前端团队 2021-03-15
2019-03-15 圆形队列 圆形缓冲区 循环缓冲区
点击右上角即可分享
微信分享提示