From a054864b22e1396adf0e6cd87086710fe2ed0032 Mon Sep 17 00:00:00 2001 From: Willem Melching Date: Mon, 4 Nov 2019 16:17:45 -0800 Subject: [PATCH 1/2] default to msgq --- messaging/messaging.cc | 29 +++++++++++++++++++++++++---- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/messaging/messaging.cc b/messaging/messaging.cc index 013c4f07a..241bcbbc0 100644 --- a/messaging/messaging.cc +++ b/messaging/messaging.cc @@ -1,13 +1,24 @@ #include "messaging.hpp" #include "impl_zmq.hpp" +#include "impl_msgq.hpp" Context * Context::create(){ - Context * c = new ZMQContext(); + Context * c; + if (std::getenv("ZMQ")){ + c = new ZMQContext(); + } else { + c = new MSGQContext(); + } return c; } SubSocket * SubSocket::create(){ - SubSocket * s = new ZMQSubSocket(); + SubSocket * s; + if (std::getenv("ZMQ")){ + s = new ZMQSubSocket(); + } else { + s = new MSGQSubSocket(); + } return s; } @@ -26,7 +37,12 @@ SubSocket * SubSocket::create(Context * context, std::string endpoint, std::stri } PubSocket * PubSocket::create(){ - PubSocket * s = new ZMQPubSocket(); + PubSocket * s; + if (std::getenv("ZMQ")){ + s = new ZMQPubSocket(); + } else { + s = new MSGQPubSocket(); + } return s; } @@ -37,7 +53,12 @@ PubSocket * PubSocket::create(Context * context, std::string endpoint){ } Poller * Poller::create(){ - Poller * p = new ZMQPoller(); + Poller * p; + if (std::getenv("ZMQ")){ + p = new ZMQPoller(); + } else { + p = new MSGQPoller(); + } return p; } From 4873449a07b3176366cb582697cc3ff2e98be5a1 Mon Sep 17 00:00:00 2001 From: Willem Melching Date: Mon, 4 Nov 2019 17:59:49 -0800 Subject: [PATCH 2/2] use recv one or none after poll --- messaging/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/messaging/__init__.py b/messaging/__init__.py index fa803e5d0..08a827494 100644 --- a/messaging/__init__.py +++ b/messaging/__init__.py @@ -158,7 +158,7 @@ def __getitem__(self, s): def update(self, timeout=1000): msgs = [] for sock in self.poller.poll(timeout): - msgs.append(recv_one(sock)) + msgs.append(recv_one_or_none(sock)) self.update_msgs(sec_since_boot(), msgs) def update_msgs(self, cur_time, msgs):