From 971bd16379d411f93eef96f935b9ad92c372569f Mon Sep 17 00:00:00 2001 From: zhangmeng <775834166@qq.com> Date: 星期五, 30 八月 2019 10:17:14 +0800 Subject: [PATCH] use mangos msgchache --- nng.go | 21 +++++++++++++++++---- 1 files changed, 17 insertions(+), 4 deletions(-) diff --git a/nng.go b/nng.go index 751feac..b9eb8c2 100644 --- a/nng.go +++ b/nng.go @@ -33,6 +33,9 @@ // Send impl interface Diliver func (n *NNG) Send(data []byte) error { + if n == nil { + return errors.New("please init NNG first") + } var err error if n.sock == nil { n.sock, err = n.makeNNG(agent) @@ -46,14 +49,17 @@ time.Sleep(time.Duration(surveyorTime*2) * time.Second) } - msg := mangos.NewMessage(len(data)) + msg := mangos.NewMessage(1) msg.Body = data return n.sock.SendMsg(msg) - } // Recv impl interface Diliver func (n *NNG) Recv() ([]byte, error) { + if n == nil { + return nil, errors.New("please init NNG first") + } + var err error if n.sock == nil { @@ -72,9 +78,16 @@ } +// Recv2 impl interface +func (n *NNG) Recv2(data []byte) (l int, err error) { + data, err = n.Recv() + l = len(data) + return l, err +} + // Close impl interface Deliver func (n *NNG) Close() { - if n.sock != nil { + if n != nil && n.sock != nil { n.sock.Close() n.sock = nil } @@ -120,7 +133,7 @@ switch n.mode { case Bus: sock, err = n.busMakeNNG(typ) - case ReqRep: + case ReqRep, SurvResp: sock, err = n.rrMakeNNG(typ) default: sock, err = n.ppMakeNNG(typ) -- Gitblit v1.8.0