你要明白你的程序中通道的作用,目的是为了阻塞主线程,让go程都执行完毕主线程才继续 所以你老师的程序和你的程序都没问题 你老师的程序是在main里主线程等待send和recv的exitChan,exitChan的通道缓存为2,所以必须收到2个数据阻塞才能解开,所以send和recv都发送一次数据。(当然,recv依赖于send的ch通道的数据,也就是保证先send后recv,这个就不多说了) 而你的程序是main主线程只等待readData的exitChan,exitChan的通道缓存为1,所以只需要一个数据就可以了。(当然,readData依赖于writeData的intChan通道的数据,也就是保证先writeData后readData,这个也不多说了)
2,190
社区成员
914
社区内容
加载中
试试用AI创作助手写篇文章吧