From 0bc72d004b08b6cac005931787f43c68dace7685 Mon Sep 17 00:00:00 2001 From: lichao <lichao@aiotlink.com> Date: 星期五, 02 四月 2021 16:25:39 +0800 Subject: [PATCH] refactor pub/sub center. --- utest/utest.cpp | 19 +++++++++++++++---- 1 files changed, 15 insertions(+), 4 deletions(-) diff --git a/utest/utest.cpp b/utest/utest.cpp index 54c6d6f..637ae26 100644 --- a/utest/utest.cpp +++ b/utest/utest.cpp @@ -25,7 +25,7 @@ BOOST_AUTO_TEST_CASE(Temp) { - std::string topics[] = { + Topic topics[] = { "", ".", "a", @@ -128,7 +128,7 @@ } }; ThreadManager threads; - typedef std::vector<std::string> Topics; + typedef std::vector<Topic> Topics; Topics topics; for (int i = 0; i < 100; ++i) { topics.push_back("t" + std::to_string(i)); @@ -151,6 +151,17 @@ bus.Stop(); } +namespace +{ +struct C { + C() { printf("+C\n"); } + C(const C &c) { printf("+C(const C&)\n"); } + void F() { printf("C::F()\n"); } + ~C() { printf("-C\n"); } + char arr[100]; +}; +int F(C &c) { return printf(":::::::::::::F()\n"); } +} // namespace BOOST_AUTO_TEST_CASE(ReqRepTest) { @@ -182,8 +193,8 @@ auto Server = [&](const std::string &name, const std::vector<std::string> &topics) { SocketReply server(shm); ProcInfo info; + info.set_id(name); info.set_name(name); - info.set_info(name); if (!server.Register(info, topics, 100)) { printf("register failed\n"); } @@ -197,7 +208,7 @@ } }; ThreadManager clients, servers; - std::vector<std::string> topics = {"topic1", "topic2"}; + std::vector<Topic> topics = {"topic1", "topic2"}; servers.Launch(Server, "server", topics); std::this_thread::sleep_for(100ms); for (auto &t : topics) { -- Gitblit v1.8.0