上药三品,神与气精

曾因酒醉鞭名马 生怕情多累美人


  • 首页

  • 关于

  • 分类

  • 标签

  • 归档

  • 搜索

2019-go-20

发表于 2019-03-11 | 分类于 golang | 阅读次数:
字数统计: 135 | 阅读时长 ≈ 1

一旦主gorountine 中的代码执行完毕 当前的go程序就会结束运行

那么在go程序结束的那一刻 还有gorountine 未得到运行机会 它们就没有运行机会了 它们中的代码也不会被执行了

go语言不会去保证这些 gorountine 会以怎样的顺序运行 哪个gorountine 先执行完 哪个gorountine 后执行完 往往是不可预知的 除非我们使用了某种go语言提供的方式进行了人为干预

2019-go-19

发表于 2019-03-11 | 分类于 golang | 阅读次数:
字数统计: 21 | 阅读时长 ≈ 1

单向通道最主要的用途 就是约束其他代码的行为

2019-go-18

发表于 2019-03-11 | 分类于 golang | 阅读次数:
字数统计: 107 | 阅读时长 ≈ 1

通道(channel)完全可以与 goroutine(也可称go 程)并驾齐驱,共同代表go语言独有的并发编程模式和编程哲学

通道类型的值本身就是并发安全的

发送接收都是互斥
发送和接收操作中对元素值的处理 都是不可分割的
发送操作在完全完成之前会被阻塞,接收操作也是如此

2019-go-17

发表于 2019-03-11 | 分类于 golang | 阅读次数:
字数统计: 396 | 阅读时长 ≈ 1

字典的操作和约束

map

键值对

字典类型本质上是一个哈希表的特定实现,在这个实现当中,键和元素的最大不同在于,键的类型是受限制的,元素的类型却可以是任意类型的

哈希表中比较重要的一个过程 就是映射

键可以理解为元素的一个索引,在哈希表中通过键查找与它成对的那个元素

这种对应关系,在数学里就被称为映射 也是map这个词的本意

哈希表的映射过程就存在于对键–元素的增、删、改、查的操作之中

映射的第一步 就是把键值转换为哈希值

键值的类型 不可以是函数类型、字典类型和切片类型

键的值之间支持判等的操作

另外 键的类型是揭接口类型的,那么键值的实际类型也不能是上述的三种类型,否则在程序运行过程当中会引发panic

键的类型 优先选用数值类型和指针类型,类型的宽度越小越好

字符串类型的话 对键值的长度进行额外的约束

字典是引用的类型 声明而不初始化 值是nil
除了添加键–元素对,在一个值为nil的字典上做任何操作都不会引起错误

试图在一个值为nil的字典中添加键–元素对的时候,运行时系统会抛出一个panic

2019-go-16

发表于 2019-03-11 | 分类于 golang | 阅读次数:
字数统计: 99 | 阅读时长 ≈ 1

函数是第一等公民

函数不仅可以封装代码、分割功能、解耦逻辑

还可以化身普通的值 在其他函数之间传递、赋予变量、做类型判断和转换等等

就像切片和字典的值一样

函数值可以由此成为能够被随意传播的独立逻辑组件(或者说功能模块)

1…313233…109
John Cheung

John Cheung

improve your python skills

543 日志
33 分类
45 标签
RSS
GitHub Email
© 2020 John Cheung
本站访客数:
|
主题 — NexT.Pisces v5.1.4
博客全站共226.3k字