如何在运行时检查是否启用了竞赛检测器?

时间:2017-07-06 09:28:02

标签: go

有什么方法可以检查Go程序是否在运行时启用CultureInfo hindi = new CultureInfo("hi-IN"); string conv = string.Format(hindi, "{0:c}", totalPrice.toString()); Label11.Text = conv; 编译(例如用于记录/信息目的)?

我查看了documentation以及明显的位置(-race),但我找不到任何内容。

1 个答案:

答案 0 :(得分:7)

据我所知,没有对此进行简单检查,但启用runtime/*-race build tag已设置,因此您可以利用它。

我创建了一个新目录race,并在那里放了两个文件:

israce

israce/race.go

// +build race // Package israce reports if the Go race detector is enabled. package israce // Enabled reports if the race detector is enabled. const Enabled = true

israce/norace.go

由于构建标记,只会编译两个文件中的一个。

这也是Go标准库的用法(race.gonorace.go),但由于这是一个内部包,因此无法在Go源库之外导入。