Skip to content

Instantly share code, notes, and snippets.

@yumed15
Created November 22, 2023 12:13
Show Gist options
  • Save yumed15/98396056f55153d1af9b2db75ad76071 to your computer and use it in GitHub Desktop.
Save yumed15/98396056f55153d1af9b2db75ad76071 to your computer and use it in GitHub Desktop.
c := sync.NewCond(&sync.Mutex{})
c.L.Lock()
for conditionTrue() == false {
c.Wait() // <--- we wait to be notified that the condition has occurred
// this is a blocking call and the goroutine will be suspended
// allows other goroutines to run on the OS thread
}
c.L.Unlock()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment