Go Channel 并发原语
并发编程里面的核心组件,让多个goroutine之间可以安全的传递数据并且同步进行
并发编程里面的核心组件,让多个goroutine之间可以安全的传递数据并且同步进行
基于 Go 的短视频 Feed 系统(后端 + 前端),包含账号、视频、点赞、评论、关注与 Feed 流;支持 Redis 缓存与 RabbitMQ 异步 Worker(API 进程与 Worker 进程可拆分部署)。
go的核心优势是goroutine,但是系统无法调用goroutine,所以需要go自己实现一个用户态调度器
从虚拟内存、栈与堆、GC 到 mcache/mcentral/mheap,讲清 Go 一次内存分配到底发生了什么。
一句话总结就是用来传递请求上下文(比如取消信号,超时时间,traceid)等消息的机制,可以在多goroutine之间传递信号
深入理解 Go 语言的并发哲学:不要通过共享内存来通信,而要通过通信来共享内存。