
本文共 3303 字,大约阅读时间需要 11 分钟。
Channel���Golang������������������
1. Channel������������
���Golang������Channel��������������������������������������������������������������� g��lange������������������������������������������������Channel���������������������������������������������
������������������������������
package mainimport ( "fmt")func main() { ch := make(chan []int, 3) s := []int{1, 3, 4} ch <- s fmt.Printf("s length is %d, cap is %d\n", len(ch), cap(ch)) fmt.Printf("s address is %p\n", s) r := <-ch r[0] = 2 fmt.Printf("s is %#v\n", s) fmt.Printf("r is %#v\n", r) fmt.Printf("r address is %p\n", r)}
���������������
s length is 1, cap is 3s address is 0xc00000c060s is []int{2, 3, 4}r is []int{2, 3, 4}r address is 0xc00000c080
������������������������Channel������������������������������������������������������������������������������������������Channel������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
2. Channel������������
���Golang������Channel���������������������������������������������������������������Golang������������������������������������������������������������������������������������������
���������������������������������Channel������������������
package mainimport ( "fmt")func main() { ch := make(chan [3]int, 3) s := [3]int{1, 3, 4} ch <- s fmt.Printf("s length is %d, cap is %d\n", len(ch), cap(ch)) fmt.Printf("s address is %p\n", s) r := <-ch r[0] = 2 fmt.Printf("s is %#v\n", s) fmt.Printf("r is %#v\n", r) fmt.Printf("r address is %p\n", r)}
���������������
s length is 1, cap is 3s address is 0xc0000aa000s is [3]int{1, 3, 4}r is [3]int{2, 3, 4}r address is 0xc0000aa040
������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
3.������������������������
���Golang������Channel���������������������������������������������������������������������������������������������������������������������
- shallow copy������������������������������������������������������������������������������������
- deep copy���������������������������������������������������������
������Golang���int���float32���string���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
- ������������������int���float32���������������������������������������
- ������������������������������������������������������������������������������������������������������������������
- ������������������������������������������������������������������������������������������������������������������������������
������������������������������������������������������Golang���������������������������������������������������������������������������������������������������������������������
������������������������������������������Golang���Channel������������������������������������������������������������������������������������������������������
发表评论
最新留言
关于作者
