aa
This commit is contained in:
@@ -180,7 +180,9 @@ func (t *TcpClient) HandleTcpMessages(printNo string) {
|
|||||||
printMsg.Status = printMsgAlreadyLoad
|
printMsg.Status = printMsgAlreadyLoad
|
||||||
//先避免重复读再插到channel?
|
//先避免重复读再插到channel?
|
||||||
if _, err := dao.UpdateEntity(db, printMsg, "Status"); err == nil {
|
if _, err := dao.UpdateEntity(db, printMsg, "Status"); err == nil {
|
||||||
t.addMsgChan(printMsg)
|
if err = t.addMsgChan(printMsg); err != nil {
|
||||||
|
globals.SugarLogger.Debugf("HandleTcpMessages addMsgChan Err: %v", err)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -259,15 +259,21 @@ func (t *TcpClient) setPrintStatusTime(key string) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (t *TcpClient) addMsgChan(printMsg *model.PrintMsg) {
|
func (t *TcpClient) addMsgChan(printMsg *model.PrintMsg) (err error) {
|
||||||
t.Lock()
|
t.Lock()
|
||||||
defer t.Unlock()
|
defer func() {
|
||||||
|
t.Unlock()
|
||||||
|
if r := recover(); r != nil && r.(error).Error() == "send on closed channel" {
|
||||||
|
err = fmt.Errorf("send on closed channel")
|
||||||
|
}
|
||||||
|
}()
|
||||||
if t.MsgMap[printMsg.PrintNo] == nil {
|
if t.MsgMap[printMsg.PrintNo] == nil {
|
||||||
dataChan := make(chan *model.PrintMsg, 1024)
|
dataChan := make(chan *model.PrintMsg, 1024)
|
||||||
t.MsgMap[printMsg.PrintNo] = dataChan
|
t.MsgMap[printMsg.PrintNo] = dataChan
|
||||||
}
|
}
|
||||||
globals.SugarLogger.Debugf("addMsgChan msgID: %s", printMsg.MsgID)
|
globals.SugarLogger.Debugf("addMsgChan msgID: %s", printMsg.MsgID)
|
||||||
t.MsgMap[printMsg.PrintNo] <- printMsg
|
t.MsgMap[printMsg.PrintNo] <- printMsg
|
||||||
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
func (t *TcpClient) addCallbackChan(key, data string) {
|
func (t *TcpClient) addCallbackChan(key, data string) {
|
||||||
|
|||||||
Reference in New Issue
Block a user