liuxiaolong
2020-12-25 f057fdf62bfcc34ec4e5f5639c6f2d712748acd7
test sendandrecv
1个文件已修改
53 ■■■■■ 已修改文件
hbusc.go 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
hbusc.go
@@ -146,32 +146,39 @@
                    Key: handle.conf.regKey,
                })
            }
            var rMsg []bhomebus.Mesg
            n := regSock.Sendandrecv(regAddr, msg, &rMsg) //n代表成功发送的节点的个数
            handle.printLog("regSock.Sendandrecv n:", n, "len(rMsg):", len(rMsg))
            if n == 1 && len(rMsg) == 1 {
                var cr CommonReply
                if err = json.Unmarshal(rMsg[0].Data, &cr);err != nil {
                    handle.printLog("unmarshal regReply err:", err)
                    return nil, errors.New("unmarshal regReply err:"+err.Error())
                } else {
                    if cr.Status == REPLY_SUCCESS {
                        var rr RegisterReply
                        if err = json.Unmarshal(cr.Body, &rr);err ==nil {
                            regR = &rr
            for i:=0;i<100;i++{
                time.Sleep(1*time.Second)
                handle.printLog("i:", i)
                if i == 99 {
                            break loop
                        } else {
                            handle.printLog("unmarshal RegisterReply err:", err)
                        }
                    } else {
                        handle.printLog("cr.Status:", cr.Status, "Desc:", cr.Desc)
                    }
                }
            } else {
                time.Sleep(100 * time.Millisecond)
            }
            //var rMsg []bhomebus.Mesg
            //n := regSock.Sendandrecv(regAddr, msg, &rMsg) //n代表成功发送的节点的个数
            //handle.printLog("regSock.Sendandrecv n:", n, "len(rMsg):", len(rMsg))
            //if n == 1 && len(rMsg) == 1 {
            //    var cr CommonReply
            //    if err = json.Unmarshal(rMsg[0].Data, &cr);err != nil {
            //        handle.printLog("unmarshal regReply err:", err)
            //        return nil, errors.New("unmarshal regReply err:"+err.Error())
            //    } else {
            //        if cr.Status == REPLY_SUCCESS {
            //            var rr RegisterReply
            //            if err = json.Unmarshal(cr.Body, &rr);err ==nil {
            //                regR = &rr
            //                break loop
            //            } else {
            //                handle.printLog("unmarshal RegisterReply err:", err)
            //            }
            //
            //        } else {
            //            handle.printLog("cr.Status:", cr.Status, "Desc:", cr.Desc)
            //        }
            //
            //    }
            //} else {
            //    time.Sleep(100 * time.Millisecond)
            //}
        }
    }