이 콘텐츠는 선택한 언어로 제공되지 않습니다.
Chapter 4. Go Race Detector
Go Toolset includes the Go race detector. The race detector is a feature of the Go standard library. The race detector must be enabled at compile time and is used at runtime.
4.1. Installing the Race Detector 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat Enterprise Linux 8 go-toolset module contains Go race detector. Skip this step.
In Go Toolset, the race detector is provided by the go-toolset-1.11-golang-race package. To install the race detector:
yum install go-toolset-1.11-golang-race
# yum install go-toolset-1.11-golang-race
This command installs a variant of the Go standard library with the runtime race detection.
See Also
4.2. Using the Race Detector 링크 복사링크가 클립보드에 복사되었습니다!
To use the runtime race detector in a Go project, add the -race option to the go tool commands used when manipulating the project.
For a minimal approach to using the race detector, build the project with the -race option:
For Red Hat Enterprise Linux 7:
scl enable go-toolset-1.11 'go build -race -o output_file go_main_package'
$ scl enable go-toolset-1.11 'go build -race -o output_file go_main_package'Copy to Clipboard Copied! Toggle word wrap Toggle overflow For Red Hat Enterprise Linux 8:
go build -race -o output_file go_main_package
$ go build -race -o output_file go_main_packageCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Run the resulting executable binary file, and the race detector prints warnings to the standard output when a race is detected.
The race detector has a significant runtime resource overhead.
4.3. Additional Resources 링크 복사링크가 클립보드에 복사되었습니다!
A detailed description of the Go race detector and its features is beyond the scope of this book. For more information, see the resources listed below.
Online Documentation
- Data Race Detector — Official documentation of the Go race detector.
See Also
- Chapter 1, Go Toolset — An overview of Go Toolset and more information on how to install it on your system.