04 2017 档案

摘要:1、判断 类型 类似于 JavaScript 中 typeof 和 Java 中 instanceof 2、判断 key 是否在 map 中 3、判断 channel 是否 已关闭 且 没有数据 温馨提示: 判断类型,还有另外一种方式:和 switch 结合 这里的 i := v.(type) 使经 阅读全文
posted @ 2017-04-30 11:29 52php 阅读(2750) 评论(0) 推荐(0) 编辑
摘要:gofmt 大部分的格式问题可以通过 gofmt 解决,gofmt 自动格式化代码,保证所有的Go代码与官方推荐的格式保持一致,于是所有格式有关问题,都以 gofmt 的结果为准。 注释 在编码阶段应该同步写好变量、函数、包的注释,最后可以利用 godoc 导出文档。注释必须是完整的句子,句子的结尾 阅读全文
posted @ 2017-04-23 16:18 52php 阅读(587) 评论(0) 推荐(0) 编辑
摘要:7.2 并发模式 - pool 阅读全文
posted @ 2017-04-23 16:17 52php 阅读(490) 评论(0) 推荐(0) 编辑
摘要:7.3 并发模式 - work 阅读全文
posted @ 2017-04-23 16:17 52php 阅读(456) 评论(0) 推荐(0) 编辑
摘要:6.3 并发 - 竞争状态 阅读全文
posted @ 2017-04-23 16:16 52php 阅读(251) 评论(0) 推荐(0) 编辑
摘要:6.4 锁住共享资源 阅读全文
posted @ 2017-04-23 16:16 52php 阅读(239) 评论(0) 推荐(0) 编辑
摘要:6.5 通道 阅读全文
posted @ 2017-04-23 16:16 52php 阅读(291) 评论(3) 推荐(0) 编辑
摘要:7.1 并发模式 - runner 阅读全文
posted @ 2017-04-23 16:16 52php 阅读(385) 评论(0) 推荐(0) 编辑
摘要:6.1 并行 与 并发 阅读全文
posted @ 2017-04-23 16:15 52php 阅读(417) 评论(0) 推荐(0) 编辑
摘要:6.2 goroutine 阅读全文
posted @ 2017-04-23 16:15 52php 阅读(363) 评论(0) 推荐(0) 编辑
摘要:Golang 判断文件是否存在有点怪异,是根据在操作文件时返回的错误信息来判断的,而不能直接根据路径判断 版本1: 版本2: 简洁版 阅读全文
posted @ 2017-04-20 14:19 52php 阅读(3432) 评论(0) 推荐(0) 编辑
摘要:Go 的 flag 包可以解析命令行的参数。 一、命令行语法 命令行语法主要有以下几种形式: cmd -flag // 只支持bool类型 cmd -flag=xxx cmd -flag xxx // 只支持非bool类型 以上语法对于一个或两个‘-’号是一样的,即 cmd -flag xxx (使 阅读全文
posted @ 2017-04-19 11:27 52php 阅读(2418) 评论(1) 推荐(0) 编辑
摘要:Go 语言是一种静态类型的编程语言,所以在编译器进行编译的时候,就要知道每个值的类型,这样编译器就知道要为这个值分配多少内存,并且知道这段分配的内存表示什么。 提前知道值的类型的好处有很多,比如编译器可以合理的使用这些值,可以进一步优化代码,提高执行的效率,减少 bug 等等。 基本类型 基本类型是 阅读全文
posted @ 2017-04-18 12:03 52php 阅读(6543) 评论(3) 推荐(1) 编辑
摘要:原文:Fundamentals of concurrent programming 译者:youngsterxyf 本文是一篇并发编程方面的入门文章,以Go语言编写示例代码,内容涵盖: 运行期并发线程(goroutines) 基本的同步技术(管道和锁) Go语言中基本的并发模式 死锁和数据竞争 并行 阅读全文
posted @ 2017-04-16 00:52 52php 阅读(609) 评论(0) 推荐(0) 编辑
摘要:通常情况下,函数向其调用方报告错误的方式都是返回一个 error 类型的值。但是,当遇到致命错误的时候,很可能会使程序无法继续运行。这时,上述错误处理方式就太不适合了,Go 推荐通过调用 panic 函数来报告致命错误。 1. panic 为了报告运行期间的致命错误,Go 内建了专用函数 panic 阅读全文
posted @ 2017-04-15 17:13 52php 阅读(880) 评论(0) 推荐(0) 编辑
摘要:Go 还有一些特有的流程控制语句,其中一个就是 defer 语句。该语句用于延迟调用指定的函数,它只能出现在函数的内部,由 defer 关键字以及针对某个函数的调用表达式组成。这里被调用的函数称为 延迟函数。一个简单的例子如下: 其中,defer 关键字后面是针对 fmt.Println 函数的调用 阅读全文
posted @ 2017-04-15 16:46 52php 阅读(359) 评论(0) 推荐(0) 编辑
摘要:sync.Once.Do(f func()) 是一个非常有意思的东西,能保证 once 只执行一次,无论你是否更换 once.Do(xx) 这里的方法,这个 sync.Once块 只会执行一次。 因此,常用于 单例模式 中! 阅读全文
posted @ 2017-04-14 18:39 52php 阅读(1983) 评论(0) 推荐(0) 编辑
摘要:物理主机:Windows 7,虚拟机:CentOS 6.8 1、设置虚拟机的 默认路径:编辑 -> 首选项 -> 设置“虚拟机的默认位置” 2、设置 虚拟网络:编辑 -> 虚拟网络编辑器 注意:桥接到:一个 可上网的网卡,不然,虚拟机内部上不了网! 3、设置虚拟机的网卡类型:虚拟机 -> 设置 -> 阅读全文
posted @ 2017-04-13 14:48 52php 阅读(569) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示