摘要: sync包 一、sync还是channel ​ Go语言提倡“不要通过共享内存来通信,而应该通过通信来共享内存”。正如在前文阐述的那样,建议大家优先使用CSP并发模型进行并发程序设计。但是在下面一些场景下,我们依然需要sync包提供的低级同步原语。 (1)需要高性能的临界区同步机制场景。 在Go中, 阅读全文
posted @ 2023-11-10 20:47 longan55 阅读(30) 评论(0) 推荐(0)
摘要: 一、channel特性 无缓冲channel特性 1. 通信和同步(单方面的读或写会阻塞) 2. 一发送,多接受,只有一个goroutine能接收到 3. 一接收,多发送,发送端goroutine只能阻塞,一个一个goroutine抢占式发送 4. 关闭一个channel,所有接收端都会收到停止阻塞 阅读全文
posted @ 2023-11-10 20:20 longan55 阅读(472) 评论(0) 推荐(0)