自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

_Echo_

这是一个喜欢go的游戏服务器开发者

  • 博客(3)
  • 收藏
  • 关注

原创 「Golang」 Map源码解析

文章目录Map哈希表设计及哈希碰撞解决方式哈希函数哈希碰撞开放地址法链表法Go中的Map概述数据结构构建Map构建方式1--小型Map堆分配构建方式2--小型Map栈分配常规构建方式--Make的len>8或Key-Value个数>8总结Map的读写Map的写入/删除Map的写入解析Map写入操作过程的总结Map的扩容Map扩容过程的总结Map的删除解析Map删除过程的总结Map的读取Map读取的总结总结MapMap通常称哈希表(Hash Table)、散列表等,是根据键(Key)而直接访问

2021-01-27 22:50:03 942

原创 「Golang」Channel解析

Channel描述Channel(通道)是在golang并发编程中用的最多的一个数据结构(也可以说是基础类型),在go中,作者在并发编程的环境下对于数据之间的共享提出了一个建议,也是go的经典开发准则:Do not communicate by sharing memory; instead, share memory by communicating.不要通过共享内存来通信,而应该通过通信来共享内存在通信方面,Channel给我们提供了一个很好的在并发编程环境中进行多Goroutine之间的数

2021-01-20 13:58:44 1578

原创 「Golang」sync.Pool的源码解析

前言在平时我们的业务逻辑中,会出现多次,重复的申请在堆上创建的对象用作他用,当并发量不大的时候,可能往往并不会产生一些什么问题,当时一旦当并发量增长的时候就会发现因为重复在堆上创建对象导致了GC的扫描时间与STW(stop-the-world)很长,导致程序性能的降低,因为大量地创建在堆上的对象,也会影响垃圾回收标记的时间,因此来说频繁的在堆上申请对象说对高并发量的程序性能会产生很大的影响。此时我们可以采用对象池的方式,去针对某些频繁的且大量重复申请的对象预先的创建或者将用完的对象放回对象池中,以便下回

2021-01-03 16:16:51 246

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除