首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
golang进阶
编程妲己
创建于2023-06-27
订阅专栏
编程妲己教你精通golang
等 16 人订阅
共12篇文章
创建于2023-06-27
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Go语言之goroutine协程详解
什么是协程? Go协程(Goroutine)是与其他函数或方法同时运行的函数或方法。可以认为Go协程是轻量级的线程。与创建线程相比,创建Go协程的成本很小。因此在Go中同时运行上千个协程是很常见的。
深入理解 Go Map
哈希表的意义不言而喻,它能提供 O(1) 复杂度的读写性能,所以主流编程语言中都内置有哈希表。 哈希表的关键在于哈希函数, 好的哈希函数能减少哈希碰撞,提供最优秀的读写性能。 哈希碰撞 因为没有完美的
Go语言TCP Socket编程
Golang的主要 设计目标之一就是面向大规模后端服务程序,网络通信这块是服务端 程序必不可少也是至关重要的一部分。在日常应用中,我们也可以看到Go中的net以及其subdirectories下的包均
Golang之sync.Pool对象池对象重用机制总结
sync.Pool作用 对象重用机制,为了减少GC,sync.Pool是可伸缩的,并发安全的 两个结构体 Pool是提供外部使用的对象,Pool有两个重要的成员,local是一个poolLocal数组
从编译原理到 Go 启动时的流程,Go程序是怎样跑起来的
Go 程序是怎样跑起来的 引入 我们从一个 helloworld 的例子开始 用 vim 要打开,输入命令: 下面是输出 和 ascii 一对比,就能发现,中间的列和最右边的一一对应。也就是说,刚写完
go内存管理一:系统内存管理
介绍 要搞明白 Go 语言的内存管理,就必须先理解操作系统以及机器硬件是如何管理内存的。因为 Go 语言的内部机制是建立在这个基础之上的,它的设计,本质上就是尽可能的会发挥操作系统层面的优势,而避开导
go内存管理二:go内存管理
介绍 了解操作系统对内存的管理机制后,现在可以去看下 Go 语言是如何利用底层的这些特性来优化内存的。Go 的内存管理基本上参考 tcmalloc 来实现的,只是细节上根据自身的需要做了一些小的优化调
Go内存分配那些事,就这么简单!
这篇文章主要介绍Go内存分配和Go内存管理,会轻微涉及内存申请和释放,以及Go垃圾回收。 从非常宏观的角度看,Go的内存管理就是下图这个样子,我们今天主要关注其中标红的部分。 本文基于go1.11.2
用go实现常见的数据结构
1 golang常见数据结构实现 1.1 链表 举单链表的例子,双向链表同理只是多了pre指针。 定义单链表结构: 构造链表及打印链表: 1.2 可变数组 可变数组在各种语言中都非常常用,在golan
从源码角度看 Golang 的调度
1.简单概念 1.1 调度器的三个抽象概念:G、M、P G:代表一个 goroutine,每个 goroutine 都有自己独立的栈存放当前的运行内存及状态。可以把一个 G 当做一个任务。 M: 代表
Golang的GC和内存逃逸
简介 每个版本的Golang的垃圾回收都在不断优化中,而且方法和策略都在变化,因此这里只是总结出以下几个关键点: 什么样的数据需要GC 触发GC的条件是什么 GC时发生了什么 能否从代码层面上提高GC
Golang Heap 源码剖析
堆原理解析 堆一般指二叉堆。是使用完全二叉树这种数据结构构建的一种实际应用。通过它的特性,分为最大堆和最小堆两种。 如上图可知,最小堆就是在这颗二叉树中,任何一个节点的值比其所在子树的任意一个节点都要