grpc C++ timeout 超时设置

2020/03/06 rpc 共 432 字,约 2 分钟

如果 grpc的客户端是阻塞式请求,那么默认是没有超时设置,会一直等待:

grpc::ClientContext oCtx;
oStatus = poStub->Echo(&oCtx, echoRequest, &echoResponse);

官方文档:gRPC and Deadlines

设置超时:

unsigned int client_connection_timeout = 5;

ClientContext context;

// Set timeout for API
std::chrono::system_clock::time_point deadline =
    std::chrono::system_clock::now() + std::chrono::seconds(client_connection_timeout);

context.set_deadline(deadline);

关于grpcprotobuf的安装和使用,参考这篇博客:grpc与protobuf最佳实践

文档信息

Table of Contents