Go Package sync: Difference between revisions
Jump to navigation
Jump to search
Line 10: | Line 10: | ||
=Overview= | =Overview= | ||
The <code>sync</code> package provides [[Go_Language_Goroutines#Synchronization|synchronization]] primitives to use when synchronization between [[Go_Language_Goroutines#Synchronization|goroutines]] is necessary. | The <code>sync</code> package provides [[Go_Language_Goroutines#Synchronization|synchronization]] primitives to use when synchronization between [[Go_Language_Goroutines#Synchronization|goroutines]] is necessary. | ||
=<tt>WaitGroup</tt>= | |||
{{Internal|Go WaitGroup#Overview|<tt>WaitGroup</tt>}} | |||
=TO DISTRIBUTE= | =TO DISTRIBUTE= |
Revision as of 21:09, 1 September 2023
External
Internal
Overview
The sync
package provides synchronization primitives to use when synchronization between goroutines is necessary.
WaitGroup
TO DISTRIBUTE
Mutex
A Mutex is a mutual exclusion lock. Only one goroutine can enter the critical section at a time. Not until the call to the Unlock() function issued can another goroutine enter the critical section.
Usage pattern (the curly braces are not necessary):
var mutex sync.Mutex ... mutex.Lock() { // do something in a mutual exclusion mode } mutex.Unlock()