From a6f67b4249525089fb97eb9418c7014f66c2a000 Mon Sep 17 00:00:00 2001 From: lichao <lichao@aiotlink.com> Date: 星期三, 28 四月 2021 19:29:17 +0800 Subject: [PATCH] use new robust mutex, circurar; rm timeout mutex. --- utest/speed_test.cpp | 22 ++++++++++------------ 1 files changed, 10 insertions(+), 12 deletions(-) diff --git a/utest/speed_test.cpp b/utest/speed_test.cpp index 4615c53..bd455ec 100644 --- a/utest/speed_test.cpp +++ b/utest/speed_test.cpp @@ -24,9 +24,9 @@ { const int mem_size = 1024 * 1024 * 50; SharedMemory &shm = TestShm(); - MsgI::BindShm(shm); + GlobalInit(shm); - MQId id = boost::uuids::random_generator()(); + MQId id = ShmMsgQueue::NewId(); const int timeout = 1000; const uint32_t data_size = 4000; const std::string proc_id = "demo_proc"; @@ -38,7 +38,7 @@ MsgRequestTopic body; body.set_topic("topic"); body.set_data(str); - auto head(InitMsgHead(GetType(body), proc_id)); + auto head(InitMsgHead(GetType(body), proc_id, mq.Id())); msg.Make(head, body); assert(msg.valid()); DEFER1(msg.Release();); @@ -122,7 +122,7 @@ const std::string server_proc_id = "server_proc"; SharedMemory &shm = TestShm(); - MsgI::BindShm(shm); + GlobalInit(shm); auto Avail = [&]() { return shm.get_free_memory(); }; auto init_avail = Avail(); @@ -156,9 +156,9 @@ MsgRequestTopic req_body; req_body.set_topic("topic"); req_body.set_data(msg_content); - auto req_head(InitMsgHead(GetType(req_body), client_proc_id)); - req_head.add_route()->set_mq_id(&cli.id(), cli.id().size()); - return cli.Send(&srv.id(), req_head, req_body); + auto req_head(InitMsgHead(GetType(req_body), client_proc_id, cli.id())); + req_head.add_route()->set_mq_id(cli.id()); + return cli.Send(srv.id(), req_head, req_body); }; Req(); @@ -175,15 +175,13 @@ DEFER1(req.Release()); if (req.ParseHead(req_head) && req_head.type() == kMsgTypeRequestTopic) { - auto &mqid = req_head.route()[0].mq_id(); - MQId src_id; - memcpy(&src_id, mqid.data(), sizeof(src_id)); + auto src_id = req_head.route()[0].mq_id(); auto Reply = [&]() { MsgRequestTopic reply_body; reply_body.set_topic("topic"); reply_body.set_data(msg_content); - auto reply_head(InitMsgHead(GetType(reply_body), server_proc_id, req_head.msg_id())); - return srv.Send(&src_id, reply_head, reply_body); + auto reply_head(InitMsgHead(GetType(reply_body), server_proc_id, srv.id(), req_head.msg_id())); + return srv.Send(src_id, reply_head, reply_body); }; Reply(); } -- Gitblit v1.8.0