lichao
2021-05-18 e54b8e58780c7d9f37b06cc4e1dc88badb2129c9
utest/api_test.cpp
@@ -131,6 +131,15 @@
      reg = BHRegister(proc_buf.data(), proc_buf.size(), &reply, &reply_len, 2000);
      if (reg) {
         printf("register ok\n");
         // bool r = BHUnregister(proc_buf.data(), proc_buf.size(), &reply, &reply_len, 2000);
         // printf("unregister %s\n", r ? "ok" : "failed");
         // reg = BHRegister(proc_buf.data(), proc_buf.size(), &reply, &reply_len, 2000);
         // if (!reg) {
         //    int ec = 0;
         //    std::string msg;
         //    GetLastError(ec, msg);
         //    printf("reg error: %s\n", msg.c_str());
         // }
      } else {
         int ec = 0;
         std::string msg;
@@ -201,7 +210,7 @@
   auto SyncRequest = [&](int idx) { // SyncRequest
      MsgRequestTopic req;
      req.set_topic(topic_ + std::to_string(idx));
      req.set_topic(topic_ + std::to_string(0));
      req.set_data("request_data_" + std::to_string(idx));
      std::string s(req.SerializeAsString());
      // Sleep(10ms, false);
@@ -286,19 +295,30 @@
   std::atomic<bool> run(true);
   BHStartWorker(&ServerProc, &SubRecvProc, &ClientProc);
   ThreadManager threads;
#if 0
   BHStartWorker(&ServerProc, &SubRecvProc, &ClientProc);
#else
   BHStartWorker(FServerCallback(), &SubRecvProc, &ClientProc);
   threads.Launch(ServerLoop, &run);
#endif
   boost::timer::auto_cpu_timer timer;
   threads.Launch(hb, &run);
   threads.Launch(showStatus, &run);
   int ncli = 10;
   const int64_t nreq = 1000 * 100;
#if 1
   for (int i = 0; i < ncli; ++i) {
      threads.Launch(asyncRequest, nreq);
   }
   // for (int i = 0; i < 100; ++i) {
   //    SyncRequest(0);
   // }
#else
   for (int i = 0; i < 100; ++i) {
      SyncRequest(i);
   }
#endif
   int same = 0;
   uint64_t last = 0;