美文网首页
Go语言二:Go同步和并发

Go语言二:Go同步和并发

作者: Wu杰语 | 来源:发表于2017-08-11 07:26 被阅读0次

    Go同步

    GO同步着重看Go的Sync库,这个库提供了同步的函数。

    WaitGroup:有Add、Done、Wait三个函数,用的比较多,用于阻塞主线程,等待其他routing的完成。

    Mutex: Lock 和 UnLock方法,是共享内存一种同步的使用方法。

    RWMutext:读写锁,Lock和UnLock是写锁,写的时候别的什么都不能干,而RLock,RUnLock是读锁。

    Cond:Wait() signal() broadcast方法,要和Mutxt的Lock和UnLock配合起来使用。

    Once,确保放到其中的function只执行一次。

    Go并发

    Go采用CSP,有缓冲和非缓冲两种用法。
    其中对于非缓冲的,类似于泳池接力,一个到达,另外一个才能走。

    对于缓冲的chan,类比送信,如果信箱没有满,则送完就可以走,不用等待,只有信箱满了,才需要等待。

    相关领域

    Go相关领域就是OS以及GoRouteing底层的原理,需要进一步学习。
    而目前的阶段,首先需要对Go常用的库进行学习和刻意练习,手中有货心中不怕。

    相关文章

      网友评论

          本文标题:Go语言二:Go同步和并发

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