// package kernel_dict -- потокобезопасный автономный словарь package kernel_dict import ( "sync" . "wartank/kernel/kernel_types" ) // ЯдроСловаря -- потокобезопасный автономный словарь type ЯдроСловарь struct { dictVal map[string]interface{} // Словарь различных значений block sync.RWMutex } // НовЯдроСловарь -- возвращает новый потокобезопасный автономный словарь func НовЯдроСловарь() *ЯдроСловарь { sf := &ЯдроСловарь{ dictVal: map[string]interface{}{}, } _ = ИЯдроСловарь(sf) return sf } // Получ -- возвращает хранимое значение func (sf *ЯдроСловарь) Получ(key string) interface{} { sf.block.RLock() defer sf.block.RUnlock() return sf.dictVal[key] } // Уст -- устанавливает значение в контекст func (sf *ЯдроСловарь) Уст(key string, val interface{}) { sf.block.Lock() defer sf.block.Unlock() sf.dictVal[key] = val }