![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Go
文章平均质量分 54
Clovemeo
这个作者很懒,什么都没留下…
展开
-
使用dlv分析golang进程cpu占用高问题
c++通过dbg分析内存和cpu,可能大家都会。本篇主要分析通过delve分析golang程序cpu占用高的问题。delve是golang推荐的专门go语言调试工具,用来替代gdb。golang组织说delve能更好的理解go语言。先用vscode写个简单的demo,main.go代码如下:package mainimport ( "fmt" "os" "os/signal")func main() { fmt.Println("main start") msgList :=原创 2022-05-24 21:03:07 · 1813 阅读 · 0 评论 -
go time分析 陷阱
1 问题time.now() 和字符串解析出来的时间 采用before 的方法 出来的结果和实际的情况不一致愿意是time,now 是monotonic time 字符串解析的是wall time 所以比较的结果有可能是不对的2 解决方法方法1 把时间都采用time.Parse 处理后比较如 format:="2006-01-0215:04:05"now:=time.Now()//now,_:=time.Parse(format,time.Now().For...原创 2021-12-03 14:37:59 · 334 阅读 · 0 评论 -
go: 计算字符串的长度
1 正常的方法len(str)2 第二种方式len([]rune(str))但是对于中文要注意的一点是:如果字符串中出现中文字符不能直接调用len 函数来统计字符串字符长度,这是因为在Go中,字符串是以 UTF-8 为格式进行存储的,在字符串上调用 len 函数,取得的是字符串包含的 byte 的个数。 每个中文字,占3个byte英文字符仍是占一个byte。所以计算中文的字符采用方法2 才能保证正确...原创 2021-12-01 10:59:15 · 1156 阅读 · 0 评论 -
go 运行代码遇到的问题(同一个包,不同包 之间的引用报错)
1 相同的package,main中引用另外一个go文件的函数报错如图所示main中引用process中的函数,go run mian.go 会报错如下所示可以这样运行 go run process.go mian.go 可以避免这个报错, 且main可以正常启动起来2 在不同的package中,但是在同一项目下,引用的运行也会报错main.go中调用了model包中结构体 go run mai.go 也是会报错的我的编译器是GoLang, 可以再项目的目录下执行go mod原创 2020-09-18 22:35:50 · 2638 阅读 · 2 评论