gpt4 book ai didi

c++ - Go context.Background() 的 gRPC++ 等价物是什么?

转载 作者:行者123 更新时间:2023-12-01 21:13:54 29 4
gpt4 key购买 nike

如果我明白 ::grpc::ServerContext正确地,没有办法获得一个空的。

我的所有方法都应该与 ::grpc::ClientContext 一起使用的想法也是如此。反而?

如果不是,Go 的等价物是什么 context.Background()调用,这允许我获取命令行实用程序等的上下文。

最佳答案

根据go context documentation ,

context.Background() returns a non-nil, empty Context. It is never canceled, has no values, and has no deadline. It is typically used by the main function, initialization, and tests, and as the top-level Context for incoming requests.



事实上,如果你检查源代码,你会发现背景上下文是一个空上下文的实例,它不会返回截止日期。

现在回到 C++,通过检查 the source你可以看到上下文是以类似的方式构建的,几个例子说明了一个空的 ClientContext can be used .

此外,检查 https://grpc.github.io/blog/deadlines说明对于 C++,您可以像这样设置截止日期:
ClientContext context;
time_point deadline = std::chrono::system_clock::now() +
std::chrono::milliseconds(100);
context.set_deadline(deadline);

这对我来说意味着相当于 context.Background()在 C++ 中只是空的上下文:
ClientContext context;

这也应该适用于 ServerContext也。
我希望这可以帮助你!

关于c++ - Go context.Background() 的 gRPC++ 等价物是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61408251/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com