Go is a great language to write concurrency code. The language is designed in a way to make doing this very simple with high level abstractions.
Go offers channels, for-select, go routines and a few others language constructs to make writing concurrent code easier. It does offer other low level constructs like mutex etc., in sync
package.
I have written some of the popular concurrency patterns here in this repo.