长时间运行的 goroutine

我的应用中有 12 到 13 个长时间运行的 goroutine,它们负责数千个短暂的 goroutine 来来去去。

除了定期调用 runtime.Gosched() 之外,我是否需要考虑在长时间运行的情况下要做的其他事情?

注意:目前,那些长时间运行的程序每 15 到 30 秒(有些每隔几分钟)对资源集合执行一些监督,然后它们就会休眠。


侃侃无极
浏览 152回答 1
1回答

守着星空守着你

不,goroutine 不需要持续维护。它们由 go 运行时管理,并将继续运行,直到它们返回或主 goroutine 退出。你甚至不应该调用 runtime.Gosched() 因为它只在一个例程不会自己屈服时才需要,但你的大部分时间都在睡觉。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go