Realm
2022-12-06
来自浙江
1. 谷歌开发者不建议大家获取协程ID,避免开发者滥用协程Id实现Goroutine Local Storage,滥用协程ID会导致GC不能及时回收内存. 2 协程池在大并发的场景中很有必要,虽然goroutine开销很小,无休止开辟Goroutine,会高频率的调度Groutine,在上下文切换上浪费很多资源. https://github.com/panjf2000/ants 这个是一个高性能协程池.
4
江楠大盗
2022-12-07
来自北京
这节课太干了,全是干货,赞赞赞
2
牙小木
2023-08-18
来自北京
没有goroutineId,Mutex就无法做到可重入。。
啦啦啦
2023-06-08
来自新加坡
还有一类特殊的情况涉及到协程长时间堵塞在系统调用中的问题。这时,当前正在工作的线程会陷入等待状态,等待内核完成系统调用并返回 前面不是说Go用的非堵塞IO+Epoll,为什么M还会被堵住?
青鸟飞鱼
2023-02-21
来自四川
协程因为在休眠、Channel 通道堵塞、网络 I/O 堵塞、执行垃圾回收而暂停时,被动让渡自己执行权利的过程。这个时候的G是放在局部运行队列吗?还是不是很合适,如果再次调度时,时机没到怎么办呢?
shuff1e
2022-12-06
来自上海
谷歌开发者不建议大家获取协程ID,主要是为了GC更好的工作,滥用协程ID会导致GC不能及时回收内存。如果一个第三方库使用了协程ID,那么使用该库的人将会莫名中招。