gpt4 book ai didi

mongodb - 应该如何声明上下文?

转载 作者:行者123 更新时间:2023-12-01 21:15:42 25 4
gpt4 key购买 nike

假设我有一个修改数据库的文件,这些函数应该共享一个上下文还是每个函数都具有自己的上下文?
分享背景

var (
ctx = context.Background()
)

func test1() {
res, err := Collection.InsertOne(ctx, data)
}

func test2() {
res, err := Collection.InsertOne(ctx, data)
}
还是应该这样?
   func test1() {
res, err := Collection.InsertOne(context.Background(), data)
}

func test2() {
res, err := Collection.InsertOne(context.Background(), data)
}

最佳答案

您不应该使用第一种方法。上下文是要传递给函数的东西,不应将其声明为全局变量。
有时可以使用第二种方法,尤其是在没有请求上下文的情况下。但是,如果在单个服务器上下文中处理了多个调用,则应将该调用的上下文传递给获得上下文的所有其他调用,因此,当上下文取消或过期时,所有调用都会失败。

关于mongodb - 应该如何声明上下文?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62921882/

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