我正在使用 Go 和 Aws Lambda 编写一个 Slack 机器人。Slack 要求机器人在 3 秒内回复。然而,有时我无法让它回复那么快,因为它正在与其他无服务器应用程序“对话”以请求一些数据或调度任务。我以前从未使用过 goroutine,但我希望我可以实现这样的东西:
Lambda 收到请求
机器人创建一个 goroutine 来处理这个请求并采取相应的行动
处理程序不会等待所有这些操作完成,而是立即回复 200。
Lambda 继续运行,直到 goroutine 完成。
我不确定这是否可能。
我读过有关 的内容sync.WaitGroup
,但我不确定如何将它与 main 函数合并在一起。我应该在处理程序中使用它吗?但我需要return
响应,而这不是我可以包装到 goroutine 中的函数。
理想情况下,我希望处理程序立即回复,然后在后台处理 goroutine。
元芳怎么了
相关分类