Golang并发数的控制

发布时间:2020-08-01 09:29:39 作者:dccw
来源:网络 阅读:653
package main

import (
    "fmt"
    "sync"
    "time"
)

func main() {

    wg := &sync.WaitGroup{}

    limiter := make(chan bool, 10)
    for i := 0; i < 100; i++ {
        wg.Add(1)
        limiter <- true
        go download(i, limiter, wg)
    }
    wg.Wait()
}

func download(index int, limiter chan bool, wg *sync.WaitGroup) {
    defer wg.Done()
    fmt.Println("start to download :", index)
    time.Sleep(1 * time.Second)
    <-limiter
}
推荐阅读:
  1. 去并发数
  2. golang的并发机制

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

golang 控制 olang

上一篇:cmd中打开python的方法

下一篇:TP3.2 统计接口访问时长

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》