美文网首页go学习
Golang实现生产者和消费者

Golang实现生产者和消费者

作者: dncmn | 来源:发表于2017-11-01 15:25 被阅读0次

    packagemain

    import(

    "fmt"

    "sync"

    )

    //实现一个生产者和消费者

    /*生产者产生数据添加到通道里面,消费者消费数据从通道里面

    不带缓存实现

    */

    funcmain(){

    ch:=make(chanint)

    varwgsync.WaitGroup

    wg.Add(2)

    goproducers(&wg,ch)

    goconsumer(&wg,ch)

    wg.Wait()

    }

    //生产者

    funcproducers(wg*sync.WaitGroup,chchanint){

    fori:=0;i<10;i++{

    fmt.Println("send:",i)

    ch<-i

    }

    close(ch)

    wg.Done()

    }

    //消费者

    funcconsumer(wg*sync.WaitGroup,chchanint){

    forv:=rangech{

    fmt.Println("recv:",v)

    }

    wg.Done()

    }

    ���$�

    相关文章

      网友评论

        本文标题:Golang实现生产者和消费者

        本文链接:https://www.haomeiwen.com/subject/evayettx.html