控制goroutine 数量

不控制goroutine数量引发的问题

Goroutine 体积轻量 优质的GMP调度

⽆限开辟goroutine :(1)CPU的使⽤率上升 (2)Memory占⽤不断上升 (3)主进程崩溃(被强制杀死)

限制goroutine数量的⽅法

⽅法一: Channel和WaitGroup的组合⽅式来限制

 

⽅法二:⽆缓冲channel和任务发送/执⾏分离来限制(⼯作池)

将任务的发送和执⾏做了业务上的分离 输⼊SendTask的频率可以设置 输出执⾏task的Goroutins是数量 也是可以设置

worker⼯作池的设计原理

 

posted @ 2022-10-17 16:56  Mr.peter  阅读(36)  评论(0编辑  收藏  举报