练习 Reader

问题 实现一个 Reader 类型,它产生一个 ASCII 字符 ‘A’ 的无限流。 背景知识 了解Go语言的接口实现方式。 Go读取流的方式 实现思路 定义MyReader结构体 为

练习 错误

问题 从之前的练习中复制 Sqrt 函数,修改它使其返回 error 值。 Sqrt 接受到一个负数时,应当返回一个非 nil 的错误值。复数同样也不被支持。 创建一个新的类型 type ErrNegativeSqrt float64 并

练习 Stringer

问题 通过让 IPAddr 类型实现 fmt.Stringer 来打印点号分隔的地址。 例如,IPAddr{1, 2, 3, 4} 应当打印为 “1.2.3.4”。 背景知识 类型的定义 实现类型的自定义函

练习 斐波纳契闭包

练习 斐波纳契闭包 问题 让我们用函数做些好玩的事情。 实现一个 fibonacci 函数,它返回一个函数(闭包),该闭包返回一个斐波纳契数列 `(0, 1, 1, 2, 3, 5, ...)`。 背

线程安全那些事

引言 在上一篇文章,我们了解了什么是进程/线程,把多进程和多线程进行了对比,那通常所说的线程安全是什么呢?要想搞清楚这个概念,那么我们可以尝试

进程那些事

什么是进程 在ARTS的微信群里,看到布置的命题作业,为了弄清楚一个概念,那所谓的进程到底是什么? 作为程序员都知道,进程是一段程序代码,好像也

Kafka必知必会

什么是Kafka Kafka是一个分布式流处理平台。一个流平台有这三个关键功能: 发布和订阅记录流,类似一个消息队列或者企业消息系统。 能够以较强

HAProxy必知必会

什么是HAProxy HAProxy是一款提供高可用性、负载均衡以及基于TCP和HTTP应用的高性能代理。典型的用于作为MySQL的负载均衡,

练习 映射

问题 实现 WordCount。它应当返回一个映射,其中包含字符串 s 中每个“单词”的个数。函数 wc.Test 会对此函数执行一系列测试用例,并输出成功还是失败