что это значит? можно мьютекс использовать внутри фукнции, или перед вызовом функции
Все понял, спасибо. Значит в моем случае перед вызовом функции
вы явно с явы пришли 🙂 нет, mutex это не synchronized в go мутекс завязан только сам на себя, и защищает только сам себя. все остальное надо писать руками
так вот откуда берутся всякие WithLock в проектах
Мютекс применяется к области.
вообще-то, ни к чему он не применяется
я бы не отказался это и в стандартную либу затащить в виде методов Do(func()) и ReadDo(func()) у sync.Mutex/sync.RWMutex, например
тогда наверное лучше так: Do(sync.Locker, func()), и первым аргументом тогда можно подсовывать и просто mutex, и rwmutex на чтение и запись
надо RWMutex как-то рубить на Rmutex и WMutex и тогда вообще круто будет
там же есть такое
https://golang.org/pkg/sync/#RWMutex.RLocker
Обсуждают сегодня