48 | 程序性能分析基础(上) 作为拾遗的部分,今天我们来讲讲与 Go 程序性能分析有关的基础知识。 Go 语言为程序开发者们提供了丰富的性能分析 API,和非常好用的标准工具。这些 API 主要存在于: 1、runtime/pprof; 2、net/http/pprof ...
bufio包中的数据类型 下 在上一篇文章中,我提到了bufio包中的数据类型主要有Reader Scanner Writer和ReadWriter。并着重讲到了bufio.Reader类型与bufio.Writer类型,今天,我们继续专注bufio.Reader的内容来进行学习。 知识扩展 问题 :bufio.Reader类型读取方法有哪些不同 bufio.Reader类型拥有很多用于读取数据 ...
2021-12-05 21:59 0 250 推荐指数:
48 | 程序性能分析基础(上) 作为拾遗的部分,今天我们来讲讲与 Go 程序性能分析有关的基础知识。 Go 语言为程序开发者们提供了丰富的性能分析 API,和非常好用的标准工具。这些 API 主要存在于: 1、runtime/pprof; 2、net/http/pprof ...
47 | 基于HTTP协议的网络服务 我们在上一篇文章中简单地讨论了网络编程和 socket,并由此提及了 Go 语言标准库中的syscall代码包和net代码包。 我还重点讲述了net.Dial函数和syscall.Socket函数的参数含义。前者间接地调用了后者,所以正确理解后者,会对用好 ...
49 | 程序性能分析基础(下) 在上一篇文章中,我们围绕着“怎样让程序对 CPU 概要信息进行采样”这一问题进行了探讨,今天,我们再来一起看看它的拓展问题。 知识扩展 问题 1:怎样设定内存概要信息的采样频率? 针对内存概要信息的采样会按照一定比例收集 Go 程序在运行期间的堆内存 ...
33 | 临时对象池sync.Pool 到目前为止,我们已经一起学习了 Go 语言标准库中最重要的那几个同步工具,这包括非常经典的互斥锁、读写锁、条件变量和原子操作,以及 Go 语言特有的几个同步工具: 1、sync/atomic.Value 2、sync.Once ...
42 | bufio包中的数据类型 (上) 今天,我们来讲另一个与 I/O 操作强相关的代码包bufio。bufio是“buffered I/O”的缩写。顾名思义,这个代码包中的程序实体实现的 I/ ...
46 | 访问网络服务 前导内容:socket 与 IPC 人们常常会使用 Go 语言去编写网络程序(当然了,这方面也是 Go 语言最为擅长的事情)。说到网络编程,我们就不得不提及 socket。 socket,常被翻译为套接字,它应该算是网络编程世界中最为核心的知识 ...
的类型,然后利用 Go 语言的编译器帮我们做检查。 这样做很方便,不是吗?不过,虽然方便,但是却让这 ...
40 | io包中的接口和工具 (上) 我们在前几篇文章中,主要讨论了strings.Builder、strings.Reader和bytes.Buffer这三个数据类型。 知识回顾 还记得吗? ...