For AI agents: A markdown version of this page is available at https://docs.datadoghq.com/security/code_security/static_analysis/static_analysis_rules/go-best-practices/avoid-empty-critical-sections.md. A documentation index is available at /llms.txt.
This product is not supported for your selected Datadog site. ().

Metadata

ID: go-best-practices/avoid-empty-critical-sections

Language: Go

Severity: Info

Category: Best Practices

Description

Empty critical sections are often a mistake. Instead of unlocking, developers often miss using defer to defer unlocking the mutex.

Non-Compliant Code Examples

func test() {
    mutex.Lock()
    mutex.Unlock()
}

Compliant Code Examples

func test() {
    mutex.Lock()
    doSomething()
    mutex.Unlock()
}
https://static.datadoghq.com/static/images/logos/github_avatar.svg https://static.datadoghq.com/static/images/logos/vscode_avatar.svg jetbrains

Seamless integrations. Try Datadog Code Security