| 45 | virtual ~EchoServiceImpl() {} |
| 46 | |
| 47 | void Echo(google::protobuf::RpcController* cntl_base, |
| 48 | const EchoRequest* request, |
| 49 | EchoResponse* response, |
| 50 | google::protobuf::Closure* done) override { |
| 51 | // brpc::Controller* cntl = |
| 52 | // static_cast<brpc::Controller*>(cntl_base); |
| 53 | |
| 54 | if (FLAGS_enable_coroutine) { |
| 55 | Coroutine(EchoAsync(request, response, done), true); |
| 56 | } else { |
| 57 | brpc::ClosureGuard done_guard(done); |
| 58 | bthread_usleep(FLAGS_sleep_us); |
| 59 | response->set_message(request->message()); |
| 60 | } |
| 61 | } |
| 62 | |
| 63 | Awaitable<void> EchoAsync(const EchoRequest* request, |
| 64 | EchoResponse* response, |
no test coverage detected