上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 107 下一页
  2020年7月22日
摘要: Go的接口 Go的接口定义了一组方法(方法集),但不包含这些方法的具体实现。接口提供了一种方式来说明某类对象具有的行为,它的主要特点如下: 接口实际上就是一组方法声明的集合,没有具体实现,没有字段属性 某个类型只要实现了某个接口的所有方法,就实现了该接口,不需要显示声明实现了什么接口 接口可以嵌入其 阅读全文
posted @ 2020-07-22 10:35 清明-心若淡定 阅读(204) 评论(0) 推荐(0) 编辑
摘要: golang 的 Context 包,是专门用来简化多个goroutine之间的上下文同步。 库的介绍Go 语言中的每一个请求的都是通过一个单独的 Goroutine 进行处理的,HTTP/RPC 请求的处理器往往都会启动新的 Goroutine 访问数据库和 RPC 服务,我们可能会创建多个 Go 阅读全文
posted @ 2020-07-22 08:30 清明-心若淡定 阅读(527) 评论(0) 推荐(0) 编辑
  2020年7月21日
摘要: 一句话说明 接口提供了一种方式来说明对象的行为:如果谁能搞定这件事,它就可以用在这儿。 接口定义了一组方法(方法集),但是这些方法不包含(实现)代码:它们没有被实现(它们是抽象的)。 所以一句话来说,接口是使用方法的抽象 定义: type Integer int func (a Integer) L 阅读全文
posted @ 2020-07-21 16:07 清明-心若淡定 阅读(481) 评论(0) 推荐(0) 编辑
摘要: 什么是channel 从字面上看,channel的意思大概就是管道的意思。channel是一种go协程用以接收或发送消息的安全的消息队列,channel就像两个go协程之间的导管,来实现各种资源的同步。可以用下图示意: channel的用法很简单: func main() { ch := make( 阅读全文
posted @ 2020-07-21 14:42 清明-心若淡定 阅读(257) 评论(0) 推荐(0) 编辑
摘要: select 介绍 从不同并发执行的协程中,获取数据可以用select来完成。select监听的多个通道,也可以用通道发送数值。 select { // 接收数据 case u:= <- ch1: ... // 发送数据 case v:= <- ch2: ... ... default: // no 阅读全文
posted @ 2020-07-21 12:23 清明-心若淡定 阅读(202) 评论(0) 推荐(0) 编辑
摘要: A "select" statement chooses which of a set of possible send or receive operations will proceed. It looks similar to a "switch" statement but with the 阅读全文
posted @ 2020-07-21 10:53 清明-心若淡定 阅读(302) 评论(0) 推荐(0) 编辑
摘要: channel容量为0和为1的区别 容量为1的channel是有缓冲channel的特殊情况,可以用在2个goroutine之间同步状态,或者其中一个等待另一个完成时才继续执行任务的情况。 无缓存的channel的容量始终为0,发送者发送数据和接受者接受数据时同时的,无任何中间态,不能缓冲任何数据。 阅读全文
posted @ 2020-07-21 09:46 清明-心若淡定 阅读(426) 评论(0) 推荐(0) 编辑
  2020年7月20日
摘要: Goroutine 是 Golang 中非常有用的功能,但是在使用中我们经常碰到下面的场景:如果希望等待当前的 goroutine 执行完成,然后再接着往下执行,该怎么办?本文尝试介绍这类问题的解决方法。 没有等待的情况 让我们运行下面的代码,并关注输出的结果: package main impor 阅读全文
posted @ 2020-07-20 16:41 清明-心若淡定 阅读(701) 评论(0) 推荐(0) 编辑
摘要: Channel 是 Golang 在语言级别提供的 goroutine 之间的通信方式,可以使用 channel 在两个或多个 goroutine 之间传递消息。Channel 是进程内的通信方式,因此通过 channel 传递对象的过程和调用函数时的参数传递行为比较一致,比如也可以传递指针等。使用 阅读全文
posted @ 2020-07-20 10:34 清明-心若淡定 阅读(483) 评论(0) 推荐(0) 编辑
  2020年7月17日
摘要: 有一个第三方的命令行参数解析包 pflag 比 flag 包使用的更为广泛。pflag 包的设计目的就是替代标准库中的 flag 包,因此它具有更强大的功能并且与标准的兼容性更好。 pflag 包的主要特点 pflag 包与 flag 包的工作原理甚至是代码实现都是类似的,下面是 pflag 相对 阅读全文
posted @ 2020-07-17 13:28 清明-心若淡定 阅读(1199) 评论(0) 推荐(0) 编辑
上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 107 下一页