zhangmeng
2022-12-26 4d938d149e782a6e2fed668eec4e1a023df9f35c
optimize cpu
4个文件已修改
22 ■■■■■ 已修改文件
3dparty/bus_nng/aarch64/libbus_nng.so 补丁 | 查看 | 原始文档 | blame | 历史
3dparty/bus_nng/x86_64/libbus_nng.so 补丁 | 查看 | 原始文档 | blame | 历史
main.cpp 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
message.cpp 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
3dparty/bus_nng/aarch64/libbus_nng.so
Binary files differ
3dparty/bus_nng/x86_64/libbus_nng.so
Binary files differ
main.cpp
@@ -41,7 +41,7 @@
            int ret = bus_client_publish(handle, i.data(), i.size(), msg.data(), msg.size());
            printf("======>> bus_client_pubmsg [%s] ret %d\n", msg.c_str(), ret);
            this_thread::sleep_for(chrono::seconds{2});
            this_thread::sleep_for(chrono::seconds{1});
        }
    }
}
@@ -61,6 +61,7 @@
    while (true) {
        auto msg = bus_client_get_submsg(handle);
        printf("SUB msg topic [%s] data [%s]\n", msg->topic, msg->msg);
        free_submsg(msg);
    }
    bus_client_free(handle);
@@ -76,10 +77,10 @@
    creg_free(reg);
    size_t count = 0;
    string base_msg("test_request==");
    string base_msg("test_request==request message -> msg-");
    this_thread::sleep_for(chrono::seconds(3));
    while (true) {
        auto msg = base_msg + "request message -> msg-"+to_string(count++);
        auto msg = base_msg + to_string(count++);
        auto reqmsg = make_req_msg(topic, topicl, msg.data(), msg.size());
        crepmsg* repmsg = NULL;
        if (bus_client_request(handle, reqmsg, &repmsg)){
@@ -118,7 +119,7 @@
        printf("REPREQ msg [%s] \n", msg->msg);
        free_reqmsg(msg);
        this_thread::sleep_for(chrono::seconds{2});
        // this_thread::sleep_for(chrono::seconds{2});
    }
}
@@ -137,4 +138,4 @@
    reply(rrtopic);
    return 0;
}
}
message.cpp
@@ -269,8 +269,7 @@
            char* entry = NULL;
            size_t entry_size = 0;
            json2str(sv, &entry, &entry_size);
            arr[i] = ptrT<char>(entry_size+1);
            memcpy(arr[i], entry, entry_size);
            arr[i] = entry;
        }
        return make_tuple(arr, count);
    };
@@ -474,7 +473,11 @@
    tie(msg->procid, msg->procidl) = copymemory(pid, pids);
    MsgRequestTopic msgRT;
    if (!msgRT.ParseFromArray(data, size)) return NULL;
    if (!msgRT.ParseFromArray(data, size)) {
        free(msg->procid);
        free(msg);
        return NULL;
    }
    tie(msg->msg, msg->msgl) = copymemory(msgRT.data());
    return msg;
@@ -488,7 +491,7 @@
    msgRT.set_topic(topic, topicl);
    msgRT.set_data(data, datal);
    auto pbstr = msgRT.SerializeAsString();
    const auto& pbstr = msgRT.SerializeAsString();
    tie(msg->msg, msg->msgl) = copymemory(pbstr);
    return msg;