这是我参与「第五届青训营 」伴学笔记创作活动的第 2 天 一、本堂课重点内容: 01语言进阶 02依赖管理 03测试 04项目实战 二、详细知识点介绍: 并发:多线单核 并行:多线多核 协程:用户态,栈kb级别,轻量级线程 线程:内核态,栈mb级别 1.1Goroutine 创建协程:在调用函数前加上关键字go go func(){} 1.2CSP(协程之间的通信) 通过通信共享内存 1.3Channel make(chan 元素类型,【缓冲大小】) 无缓冲道:make(chan int) 有缓冲道:make(chan int,2) 1.4并发安全Lock 1.5WaitGroup add()计数器+delta done()计数器-1 wait()阻塞直到计数器为0 计数器:开启协程+1;执行结束-1;主协程阻塞直到计数器为0
2.1Go依赖管理演进 GOPATH-GO Vendor-GO Module GOPATH是GO语言支持的环境变量 bin:项目编译的二进制文件 pkg:项目编译的中间产物,加速编译 src:项目源码