Search

Chapter 4. Go Race Detector

download PDF

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

In Go Toolset, the race detector is provided by the go-toolset-1.10-golang-race package. To install the race detector:

# yum install go-toolset-1.10-golang-race

A variant of the Go standard library with the runtime race detection enabled is installed.

See Also

4.2. Using the Race Detector

To use the runtime race detector for 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:

$ scl enable go-toolset-1.10 'go build -race -o output_file go_main_package'

When you run the resulting executable, the race detector will print warnings to the standard output when a race is detected.

Important

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

See Also

Red Hat logoGithubRedditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

© 2024 Red Hat, Inc.