golang中你应该知道的可重入锁知识 5月 8 2024 golang 12 分钟 读完 (约 1868 字) 探索锁和可重入锁之间的区别,理解Golang的独特立场,并在系统设计中导航可重入锁的复杂性。 阅读更多
use-channel 1月 3 2024 golang 4 分钟 读完 (约 569 字) 单并发控制在Go语言中,判断channel是否关闭并不能直接保证channel中的数据已经全部消费完毕。当你从一个channel接收数据时,你会得到两个值:接收到的数据和一个布尔值。布尔值为false时表示channel已经被关闭且没有更多的数据可接收。但是,仅凭这个机制并不能保证在channel关闭时已经消费了所有发送到channel的数据。 为了确保在关闭channel之前所有的数据都被消费完毕,你需要更细致的控制发送和接收的过程。以下是一个推荐的做法: 阅读更多