并行化 Golang 文件 IO:在这篇文章中,我们会使用一些 Go 的著名并行范例(Goroutine 和 WaitGroup),高效地遍历有大量文件的目录。所有代码都可以在 GitHub 这里找到。 我要晨读

已有1219人晨读

最近一直在做一个相当大的 API 项目,里面包括很多路由规则( routes )、服务接口( services )和处理函数( handlers )等,main.go 有点臃肿,于是用 Go 写一个服务容器( Service Container )。 我要晨读

已有1077人晨读

每隔一段时间,网上总会突然出现一些令人讨厌的帖子,其观点是:不应该为代码写注释,它存在的唯一原因是因为代码本身不足够好。对于这些论点,我完全不能苟同。本文阐述作者关于注释的观点。 我要晨读

已有741人晨读

golang PPGo_CliImg 是一个图片截取处理工具,基于Golang语言实现的图片截取处理工具。 可以将底色是白色或者其他纯色的图片切割出来,并按照自定义尺寸和边距输出。 我要晨读

已有975人晨读

我们做的是聚合支付系统,使用的是fasthttp 作为http server, http client 也是使用fasthttp 我要晨读

已有1280人晨读

事务处理是数据的重要特性。尤其是对于一些支付系统,事务保证性对业务逻辑会有重要影响。golang的mysql驱动也封装好了事务相关的操作。我们已经学习了db的Query和Exec方法处理查询和修改数据库。 我要晨读

已有802人晨读

当系统调用返回EAGAIN时,会调用WaitRead/WaitWrite来阻塞当前协程,现在我们接着聊。 我要晨读

已有645人晨读

通常C++通过指针引用计数来回收对象,但是这不能处理循环引用。为了避免引用计数的缺陷,后来出现了标记清除,分代等垃圾回收算法。Go的垃圾回收官方形容为 非分代 非紧缩 写屏障 并发标记清理。标记清理算法的字面解释,就是将可达的内存块进行标记mark,最后没有标记的不可达内存块将进行清理sweep。 我要晨读

已有3306人晨读

go 工具链目前[不支持编译 windows 下的动态链接库][1],不过[支持静态链接库][2]。 想要产生dll,可以这样 workaround ,参考 golang [issuse#11058][1]: 我要晨读

已有1063人晨读

go2.0 会有什么新特性呢?下图是一个老外的调侃,他不希望发生这样的事情(please don't make it happen)。我倒是希望其中一些实现,比如泛型和操作符重载和多态。 我要晨读

已有1264人晨读

图解 Go 中的延迟调用 defer:本教程将通过几个实用的例子讲解 Go 语言中的 defer 的用法。 我要晨读

已有1198人晨读

众所周知,带缓冲的 IO 标准库一直是 Go 中优化读写操作的利器。本文带领大家深入理解 Go 标准库之 bufio.Scanner。该文由 GCTT 翻译。 我要晨读

已有1415人晨读

集合就是不同对象的无序聚集。Go 数据结构之集合。本文图文并茂讲解 Go 集合的实现。Go 中文网增加了专题功能,欢迎大家入驻开通自己的专栏。 我要晨读

已有561人晨读

这一章节我们将详细描述网络关键API的实现,主要包括Listen、Accept、Read、Write等。 另外,为了突出关键流程,我们选择忽略所有的错误。这样可以使得代码看起来更为简单。 而且我们只关注tcp协议实现,udp和unix socket不是我们关心的。 我要晨读

已有923人晨读

go局部变量的存储空间是堆还是栈? 编译器会自动选择在栈上还是在堆上分配局部变量的存储空间,但可能令人惊讶的是,这个选择并不是由用var还是new声明变量的方式决定的。 我要晨读

已有767人晨读

之前在 golang 群里有人问过为什么程序会莫名其妙的 hang 死然后不再响应任何请求。单核 cpu 打满。 这个特征和我们公司的某个系统曾经遇到的情况很相似,内部经过了很长时间的定位分析总结,期间还各种阅读 golang 的 runtime 和 gc 代码,最终才定位到是业务里出现了类型下面这样的代码 我要晨读

已有1277人晨读

一文读懂Go的net/http标准库。在进行 Web 应用开发的时候,使用成熟并且复杂的 Web 应用框架通常会使开发变得更加迅速和简便,但这也意味着开发者必须接受框架自身的一套约定和模式。本文的目的并不是让大家抛弃框架、约定和模式——理解那些隐藏在框架之下的底层概念和基础设施也是非常重要的。 我要晨读

已有702人晨读

Go 语言函数众生相。本文是对匿名函数、高阶函数、闭包、同步、延时(defer)及其他 Go 函数类型或特性的概览。GCTT 出品。 我要晨读

已有884人晨读