Go Package atomic: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 11: | Line 11: | ||
Package atomic provides low-level atomic memory primitives useful for implementing synchronization algorithms. These functions require great care to be used correctly. Except for special, low-level applications, synchronization is better done with [[Go Channels|channels]] or the facilities of the [[Go Package sync|sync package]]. Share memory by communicating; don't communicate by sharing memory. | Package atomic provides low-level atomic memory primitives useful for implementing synchronization algorithms. These functions require great care to be used correctly. Except for special, low-level applications, synchronization is better done with [[Go Channels|channels]] or the facilities of the [[Go Package sync|sync package]]. Share memory by communicating; don't communicate by sharing memory. | ||
When goroutines attempt to call any atomic function, they're automatically synchronized agains the variable that is being referenced. |
Revision as of 17:30, 20 April 2016
External
Internal
Overview
Package atomic provides low-level atomic memory primitives useful for implementing synchronization algorithms. These functions require great care to be used correctly. Except for special, low-level applications, synchronization is better done with channels or the facilities of the sync package. Share memory by communicating; don't communicate by sharing memory.
When goroutines attempt to call any atomic function, they're automatically synchronized agains the variable that is being referenced.