差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
public:it:go [2022/01/19 13:52] – oakfire | public:it:go [2022/11/10 12:37] (当前版本) – [Go Lang] oakfire | ||
---|---|---|---|
行 3: | 行 3: | ||
* [[https:// | * [[https:// | ||
* [[https:// | * [[https:// | ||
+ | * [[https:// | ||
===== 学习笔记 ===== | ===== 学习笔记 ===== | ||
行 96: | 行 97: | ||
* 了解字符串的处理 | * 了解字符串的处理 | ||
* 字符串库函数[[https:// | * 字符串库函数[[https:// | ||
- | * 转换字符串[[https:// | + | * 转换字符串[[https:// |
* 了解该语言在面向对象, | * 了解该语言在面向对象, | ||
* 函数(func)也为值,可传递,可作为参数与返回值 | * 函数(func)也为值,可传递,可作为参数与返回值 | ||
行 166: | 行 167: | ||
</ | </ | ||
* 了解该语言的内存分配机制或GC, | * 了解该语言的内存分配机制或GC, | ||
+ | * **goroutine** 是由 Go 运行时管理的轻量级线程。 | ||
+ | * 信道(**channel**)操作符 ''< | ||
+ | ch := make(chan int, 1) // 创建int值信道, | ||
+ | ch <- v // 将 v 发送至信道 ch。 | ||
+ | v := < | ||
+ | </ | ||
+ | * 发送者可通过 '' | ||
+ | * 接收者可以通过表达式第二个参数来测试信道是否被关闭:若没有值可以接收且信道已被关闭,那么在执行完< | ||
+ | v, ok := < | ||
+ | * 循环 '' | ||
+ | * **select** 语句使一个 goroutine 协程可以等待多个通信操作。select 会阻塞到某个分支可以继续执行为止,这时就会执行该分支。当多个分支都准备好时会随机选择一个执行。如果有 '' | ||
+ | * '' | ||
* 了解该语言的编译/ | * 了解该语言的编译/ | ||
===== 剖析 ===== | ===== 剖析 ===== |