霸王餐 (中)

未匹配的标注

没成功吃上 “霸王餐” 的小白带着满脑子的困惑就在这家客栈住下了.

随后的几天, 小白日思夜想, 白天盼月亮, 晚上想太阳…百撕不得骑姐.

无意中小白在晃荡时看到这么一篇文章 Go 中的竞态条件探测器.

仔细翻了翻, 小白眼前一亮.

于是赶紧拿来试了试想不明白的那道题.

在运行命令中添加了 -race 参数指令

go run -race main.go

这次输入如下:

==================
WARNING: DATA RACE
Read at 0x00c00006a068 by goroutine 8:
  main.main.func1()
      E:/xiaobai/case1/main.go:14 +0x3f

Previous write at 0x00c00006a068 by goroutine 7:
  main.main.func1()
      E:/xiaobai/case1/main.go:14 +0x55

Goroutine 8 (running) created at:
  main.main()
      E:/xiaobai/case1/main.go:13 +0xef

Goroutine 7 (finished) created at:
  main.main()
      E:/xiaobai/case1/main.go:13 +0xef
==================
9992
Found 1 data race(s)
exit status 66

可以看到一个明显的警告信息 “WARNING: DATA RACE”.

什么意思? 怎么就数据冲突了呢?

  • 还有这里的 0x00c00006a068 是什么东东?
  • 还有这里的 0x3f, 0x55, 0xef 又是什么东东?

继续看输出信息…

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
taadis
讨论数量: 0
发起讨论 查看所有版本


暂无话题~