delayedACPs map[*txbuilder.TemplateBuilder][]*CtrlProgram
accIndexMu sync.Mutex
+ accountMu sync.Mutex
}
// ExpireReservations removes reservations that have expired periodically.
// Create creates a new Account.
func (m *Manager) Create(ctx context.Context, xpubs []chainkd.XPub, quorum int, alias string) (*Account, error) {
+ m.accountMu.Lock()
+ defer m.accountMu.Unlock()
+
normalizedAlias := strings.ToLower(strings.TrimSpace(alias))
if existed := m.db.Get(aliasKey(normalizedAlias)); existed != nil {
return nil, ErrDuplicateAlias
aliasCache *lru.Cache
assetIndexMu sync.Mutex
+ assetMu sync.Mutex
}
//Asset describe asset on bytom chain
return nil, ErrInternalAsset
}
+ reg.assetMu.Lock()
+ defer reg.assetMu.Unlock()
+
if existed := reg.db.Get(AliasKey(normalizedAlias)); existed != nil {
return nil, ErrDuplicateAlias
}