首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
golang
订阅
Jancd
更多收藏集
微信扫码分享
微信
新浪微博
QQ
15篇文章 · 0订阅
Go语言中观察GC的几种方式
我们以下面的程序为例,先使用四种不同的方式来介绍如何观察 GC,并在后面的问题中通过几个详细的例子再来讨论如何优化 GC。 go tool trace 的主要功能是将统计而来的信息以一种可视化的方式展示给用户。要使用此工具,可以通过调用 trace API: 当然,后两种方式能…
Go 内存逃逸详细分析
诡异的现象:如果有行 14 的代码,则行 15 打印的结果为 a b, 否则打印的结果为b b ,本文分析的go版本: 首先我们分析在没有行14的情况下,为什么打印的结果是 b b,这个问题相对比较简单,只要熟悉 slice 的实现原理,简单分析一下 append 的实现原理即…
go mod 使用
go modules 是 golang 1.11 新加的特性。现在1.12 已经发布了,是时候用起来了。Modules官方定义为: GO111MODULE 有三个值:off, on和auto(默认值)。 GO111MODULE=off,go命令行将不会支持module功能,寻找…
深入理解GO语言之并发机制
前言:可以说GO真正吸引到我的就是并发这块了,深入理解这个机制后让我收益匪浅,接下来就用自己薄弱的认知来谈谈GO的并发机制。 3,上面我们可以看到调用了procresize函数来初始化P,那么我们来看下procresize函数。这块代码过长,分几个部分解析(只贴重要的代码) 从…
Golang 优化之路——HTTP 长连接
压测发现有长连接问题,深入学习了一下。
LRU cache原理及go实现
1. LRU简介 缓存资源通常比较昂贵,通常数据量较大时,会竟可能从较少的缓存满足尽可能多访问,这里有一种假设,通常最近被访问的数据,那么它就有可能会被后续继续访问,基于这种假设,将所有的数据按访问时间进行排序,并按驱逐出旧数据,那么存在缓存的数据就为热点数据,这样既节省了内存…
深入理解GO语言之内存详解
深入学习golang,必须要了解内存这块,这次会仔细讲解下内存这块,包括内存分配,内存模型,逃逸分析。让我们在编程中能注意下这块。 通过next和prev,组成一个双向链表,mspan负责管理从startAddr开始的N个page的地址空间。是基本的内存分配单位。是一个管理内存…
Golang 优化之路——临时对象池
带垃圾回收的语言,虽然对于刚刚上手的程序员是友好的,但是后期随着项目变得越来越巨大,维护的内存问题也会逐渐暴露出来。今天讲一种优化内存申请的方法——临时对象池。
Go 系列文章4 : 调度器
推荐用 stackedit 导出后看,文章中有不少 mermaid 图表,ghost 博客不支持展示。原始的 markdown 保存在:这里 写得稍微有点乱,主要是按自己看代码的顺序来记录的,也不是出书,就这样吧。 PS: 新人不推荐刚学 Golang 就去看调度器代码,这部分…
Go Context的踩坑经历
context是Go中广泛使用的程序包,由Google官方开发,在1.7版本引入。它用来简化在多个go routine传递上下文数据、(手动/超时)中止routine树等操作,比如,官方http包使用context传递请求的上下文数据,gRpc使用context来终止某个请求产…