2020年1月12日

golang删除数组某个元素

摘要: golang中对一个slice进行“slice”可以取片段得到一个新的slice,那么如何用简洁的代码删除slice中的一个元素呢? a := []int{0, 1, 2, 3, 4} //删除第i个元素 i := 2 a = append(a[:i], a[i+1:]...) 作者:krystol 阅读全文

posted @ 2020-01-12 23:50 ExplorerMan 阅读(6278) 评论(0) 推荐(0)

golang用通道实现信号量,控制并发个数

摘要: func main() { var wg sync.WaitGroup sem := make(chan struct{}, 2) // 最多允许2个并发同时执行 taskNum := 10 for i := 0; i < taskNum; i++ { wg.Add(1) go func(id int) { ... 阅读全文

posted @ 2020-01-12 23:09 ExplorerMan 阅读(882) 评论(0) 推荐(0)

golang channel 用法

摘要: 一、Golang并发基础理论 Golang在并发设计方面参考了C.A.R Hoare的CSP,即Communicating Sequential Processes并发模型理论。但就像John Graham-Cumming所说的那样,多数Golang程序员或爱好者仅仅停留在“知道”这一层次,理解CS 阅读全文

posted @ 2020-01-12 21:04 ExplorerMan 阅读(404) 评论(0) 推荐(0)

导航