摘要:超时 对于一个连接外部资源,或者其它一些需要花费执行时间的操作的程序而言是很重要的。得益于通道和 select,在 Go中实现超时操作是简洁而优雅的。 Example: Result: timeout 1 two 运行这个程序,首先显示运行超时的操作,然后是成功接收的。 使用这个 select 超时 阅读全文
go语言从例子开始之Example26.通道选择器
2019-10-28 14:33 by _天枢, 242 阅读, 0 推荐, 收藏, 编辑
摘要:Go 的通道选择器 让你可以同时等待多个通道操作。Go 协程和通道以及选择器的结合是 Go 的一个强大特性。 Example: Result: 坐标: 上一个例子 下一个例子 阅读全文
go语言从例子开始之Example25.通道方向
2019-10-28 14:28 by _天枢, 289 阅读, 0 推荐, 收藏, 编辑
摘要:当使用通道作为函数的参数时,你可以指定这个通道是不是只用来发送或者接收值。这个特性提升了程序的类型安全性。 Example: Result: 坐标: 上一个例子 下一个例子 阅读全文
go语言从例子开始之Example24.通道同步
2019-10-28 14:17 by _天枢, 301 阅读, 0 推荐, 收藏, 编辑
摘要:我们可以使用通道来同步 Go 协程间的执行状态。这里是一个使用阻塞的接受方式来等待一个 Go 协程的运行结束。 Example: Result: 坐标: 上一个例子 下一个例子 阅读全文
go语言从例子开始之Example23.通道缓冲
2019-10-28 10:40 by _天枢, 215 阅读, 0 推荐, 收藏, 编辑
摘要:默认通道是 无缓冲 的,这意味着只有在对应的接收(<- chan)通道准备好接收时,才允许进行发送(chan <-)。可缓存通道允许在没有对应接收方的情况下,缓存限定数量的值。 不支持缓冲: Example: Result: 坐标: 上一个例子 下一个例子 阅读全文
go语言从例子开始之Example22.协程之通道
2019-10-28 10:32 by _天枢, 267 阅读, 0 推荐, 收藏, 编辑
摘要:通道 是连接多个 Go 协程的管道。你可以从一个 Go 协程将值发送到通道,然后在别的 Go 协程中接收。 Example: Result: 我们运行程序时,通过通道,消息 "value" 成功的从一个 Go 协程传到另一个中 默认发送和接收操作是阻塞的,直到发送方和接收方都准备完毕。这个特性允许我 阅读全文
go语言从例子开始之Example21.协程
2019-10-28 10:21 by _天枢, 372 阅读, 0 推荐, 收藏, 编辑
摘要:Go 协程 在执行上来说是轻量级的线程。 golang使用协程用go关键字。后边正常调用函数。 Example: Result: 从结果可以看出,direct是阻塞输出。goroutine和sk是异步交替输出。 坐标: 上一个例子 下一个例子 阅读全文
go语言从例子开始之Example20.错误处理
2019-10-25 15:43 by _天枢, 316 阅读, 0 推荐, 收藏, 编辑
摘要:Go 语言使用一个独立的·明确的返回值来传递错误信息的。这与使用异常的 Java 和 Ruby 以及在 C 语言中经常见到的超重的单返回值/错误值相比,Go 语言的处理方式能清楚的知道哪个函数返回了错误,并能像调用那些没有出错的函数一样调用。 Result: 坐标: 上一个例子 下一个例子 阅读全文
go语言从例子开始之Example19.接口
2019-10-25 15:25 by _天枢, 252 阅读, 0 推荐, 收藏, 编辑
摘要:接口 是方法特征的命名集合。 Example: Result: 坐标: 上一个例子 下一个例子 阅读全文
go语言从例子开始之Example18_1.结构体中定义方法
2019-10-24 10:31 by _天枢, 500 阅读, 0 推荐, 收藏, 编辑
摘要:Go 支持在结构体类型中定义方法 。 Example: Result: 坐标: 上一个例子 下一个例子 阅读全文
go语言从例子开始之Example18.struct结构体
2019-10-24 09:48 by _天枢, 296 阅读, 0 推荐, 收藏, 编辑
摘要:Go 的结构体 是各个字段字段的类型的集合。这在组织数据时非常有用 Example: Result: 坐标: 上一个例子 下一个例子 阅读全文
go语言从例子开始之Example17.指针
2019-10-24 09:21 by _天枢, 203 阅读, 0 推荐, 收藏, 编辑
摘要:Go 支持 指针,允许在程序中通过引用传递值或者数据结构 Example: Result: 坐标: 上一个例子 下一个例子 阅读全文
go语言从例子开始之Example16.函数递归
2019-10-23 16:40 by _天枢, 247 阅读, 0 推荐, 收藏, 编辑
摘要:Go 支持 递归。这里是一个经典的阶乘示例。 Example: Result: 坐标: 上一个例子 下一个例子 阅读全文
go语言从例子开始之Example15.闭包
2019-10-23 16:35 by _天枢, 198 阅读, 0 推荐, 收藏, 编辑
摘要:Go 支持通过 闭包来使用 匿名函数。匿名函数在你想定义一个不需要命名的内联函数时是很实用的。 闭包简单理解,函数反回值是一个函数 Example: Result: 坐标: 上一个例子 下一个例子 阅读全文
go语言从例子开始之Example14.变参函数
2019-10-23 16:25 by _天枢, 259 阅读, 0 推荐, 收藏, 编辑
摘要:可变参数函数。可以用任意数量的参数调用。例如,fmt.Println 是一个常见的变参函数。 Example: Result: 坐标: 上一个例子 下一个例子 阅读全文