猿问

我应该重用日历 API 服务,还是按需创建新服务是否安全?

我制作了一个小型网络服务器来创建和更新日历事件。但是,我有点不确定我应该如何使用日历 api 库服务。目前,每次网络服务器接受请求时,我都会创建一个新请求,如下所示:

ctx := context.Background()
srv, err := calendar.NewService(ctx,option.WithTokenSource(config.TokenSource(ctx)))

我怀疑我可能应该重用这个服务,但我找不到任何关于这个的文档。重复使用安全吗?不再使用时是否会自动丢弃(即垃圾收集)?


蝴蝶不菲
浏览 85回答 1
1回答

撒科打诨

您可能想使用req.Context()(where reqis your *http.Request) 而不是context.Background(). 在这种情况下,你每次都必须创建一个新的服务对象,它们将被适当地垃圾收集。您想要使用的唯一原因context.Background()是如果您异步发出日历 API 请求(例如,在单独的 goroutine 中)并且它们可能不会在 HTTP 请求完成之前完成。在这种情况下,您可以根据需要使用单个共享服务对象。
随时随地看视频慕课网APP

相关分类

Go
我要回答