首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Go context.Background()的gRPC++等效值是什么?

Go context.Background()的gRPC++等效值是什么?
EN

Stack Overflow用户
提问于 2020-04-24 12:20:41
回答 1查看 197关注 0票数 2

如果我正确地理解了::grpc::ServerContext,就无法获得一个空的。

那么,我的所有方法都应该使用::grpc::ClientContext吗?

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

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-29 13:12:41

根据go上下文文档的说法

context.Background()返回一个非零的空上下文。它永远不会被取消,没有价值,也没有最后期限。它通常由主函数、初始化和测试使用,并作为传入请求的顶级上下文。

实际上,如果您检查源代码,您将发现背景上下文是空上下文的实例化,这将不返回截止日期。

现在回到C++,通过检查来源,您可以看到上下文是以类似的方式构建的,几个例子说明了一个空的ClientContext 可以使用

此外,检查https://grpc.github.io/blog/deadlines可以说明对于C++,您可以设置这样的截止日期:

代码语言:javascript
复制
ClientContext context;
time_point deadline = std::chrono::system_clock::now() + 
    std::chrono::milliseconds(100);
context.set_deadline(deadline);

在我看来,这意味着在C++中等效的C++是公正而空的上下文:

代码语言:javascript
复制
ClientContext context;

同样,这也应该适用于ServerContext。我希望这能帮到你!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61408251

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档