Go
LauraXv
这个作者很懒,什么都没留下…
展开
-
A Tour of Go goroutine章节笔记
channel相关的关键字:close、range、select。 发送者可通过 close 关闭一个信道来表示没有需要发送的值了。接收者可以通过为接收表达式分配第二个参数来测试信道是否被关闭:若没有值可以接收且信道已被关闭,那么在执行完v, ok := <-ch之后 ok 会被设置为 false。 循环 for i := range c 会不断从信道接收值,直到它被关闭。只有发送者才能关闭信道,而接收者不能。向一个已经关闭的信道发送数据会引发程序恐慌(panic)。信道与文件不同,通常情况下无需关原创 2021-04-05 16:04:09 · 98 阅读 · 0 评论 -
A Tour of Go 方法和接口阅读笔记
本文记录了我在学习Go指南的方法和接口小节的笔记。 Go中没有类,但是可以为结构体类型和非结构体类型声明方法。在Go中,接收者的类型定义和方法声明必须在同一包内,不能为内建类型声明方法。 type Vertex struct { X, Y float64 } func (v Vertex) Abs() float64 { return math.Sqrt(v.X*v.X + v.Y*v.Y) } func (v *Vertex) Scale(f float64) { v.X = v.X * f原创 2021-04-05 15:55:15 · 133 阅读 · 0 评论