首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
go的点点滴滴
假装懂编程
创建于2021-07-05
订阅专栏
记录工作中或者学习中遇到的go知识点
等 29 人订阅
共16篇文章
创建于2021-07-05
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
golang之数组切片傻傻分不清楚
数组 go开发者在日常的工作中slice算是用的比较多的了,在介绍slice之前,我们先了解下数组,数组相信大家都不陌生,数组的数据结构比较简单,它在内存中是连续的。以一个存了10个数字的数组为例来说
gopher的自我修养
go install的时候发生了什么?以及go get只是去下载我们依赖的包文件吗?go还有哪些实用的命令?
unsafe.pointer 与 uintptr的区别| 8月更文挑战
unsafe.pointer与unintptr这两个东西在源码中出现的比较多,自己在业务上使用的比较少。但是面试中面试官还是挺喜欢问的。 unsafe.pointer 从名字来看它是不安全的和指针相关
源码解读channel
如果new的是无buffer的chan,那么只需要new一个hchan即可,从一个已经关闭的chan获取数据,得到对应的零值
深度理解resp.body.close的奥秘
http连接的疑问 http请求是我们开发中最为常见的一个东西了,特别微服务中,由于服务的拆分,每个人可能负责某一块的业务,当A服务的某个业务依赖B服务的数据时,最常见的就是B服务提供一个接口了。go
go容易犯错的30个陷阱
小心指针的陷阱 tom是指向user的指针,name=tom tom赋值给jack jack修改name=jack
为什么说并发场景不要乱用sync.map
我们都知道go的map是并发不安全的,当几个goruotine同时对一个map进行读写操作时,就会出现并发写问题fatal error: concurrent map writes
go高级进阶:goroutine的创建、休眠与恢复
goroutine切换 goroutine在go代码中无处不在,go程序会根据不同的情况去调度不同的goroutine,一个goroutine在某个时刻要么在运行,要么在等待,或者死亡。 gorout
函数传递指针真的比传值效率高吗
一个函数可以接收值类型的变量也可以接收指针类型的变量,有人说,指针类型的更好,这样就不用多余的值拷贝了,不管这个指针怎么传,我们始终用的都是指针指向那块内存。然而真的是这样的吗? 我们知道内存的分配可
go是如何回收内存的
标记清扫法 go在1.3版本之前用的是标记清扫法,核心思想就是扫描对象,然后给扫描到的对象打标记,未扫描到的对象就是垃圾,需要被回收的。 先暂停整个程序 从根对象开始扫描,找到所有的引用,并标记 开始
golang的内存管理方式
TCMalloc go内存管理比较复杂,它借鉴了谷歌的TCMalloc内存分配算法,全称Thread-Caching Malloc,即线程缓存的malloc,实现了高效的多线程内存管理,用于替代系统的
go的内存对齐
为什么要内存对齐? 先看个问题: 这个最终会输出多少?是一个1byte(1字节) + int32(4) = 5个字节吗?答案是8。 存取粒度: 首先内存是以字节为单位的,当然处理器不会按照一个字节一个
为何微服务都开始用grpc
RPC 什么是rpc框架? 简单来说服务A调用服务B,不需要显式的发起http或者tcp的请求,只需要调用本地函数,本地函数再通过http或tcp发起调用,然后数据返回。对于服务A来说,它并不关心函数
golang 如何调度你的程序的
当你写下如下程序的时候,电脑的是如何执行你的程序的? 是执行第一个go func的死循环,还是打印"hello go"? goroutine go可以轻轻松松并发上万,这个得益于goroutine。
学习笔记golang map
冲突解决 开放寻址 hash初始化的时候,先创建一个数组array 通过hashfunc去找对应的数组的位置,比如key=a,对应0的位置 假设key=p的位置也是0,但此时0的位置已经被a占用,那只
面试学习笔记-golang slice
panic 虽然a的容量4,但是由于一开始初始化的时候指定的slice的长度为3,那么a[3]就会发生越界,发生panic 那么这个4是干啥的? 结构 slice的底层是个数组,所以有个pointer