func (chanman *myChannelManager) Init(channelArgs base.ChannelArgs, reset bool) bool { if err := channelArgs.Check(); err != nil { panic(err) } chanman.rwmutex.Lock() defer chanman.rwmutex.Unlock() if chanman.status == CHANNEL_MANAGER_STATUS_INITIALIZED && !reset { return false } chanman.channelArgs = channelArgs chanman.reqCh = make(chan base.Request, channelArgs.ReqChanLen()) chanman.respCh = make(chan base.Response, channelArgs.RespChanLen()) chanman.itemCh = make(chan base.Item, channelArgs.ItemChanLen()) chanman.errorCh = make(chan error, channelArgs.ErrorChanLen()) chanman.status = CHANNEL_MANAGER_STATUS_INITIALIZED return true }