go
文章平均质量分 60
HardCorePlayer
共勉
展开
-
gin实现event stream
是属于http的一种通信方式,可以实现服务器主动推送。原理于客户端请求服务器之后一直保持链接,服务端持续返回结果给客户端。原创 2023-10-09 13:04:38 · 1001 阅读 · 0 评论 -
【go】strconv.Iota源码
golang strconv.Iota源码原创 2023-03-07 11:16:14 · 127 阅读 · 0 评论 -
【go】chan底层原理
golang chan底层原理原创 2023-02-21 18:59:58 · 180 阅读 · 0 评论 -
【go】slice原理
golang,slice结构的底层实现原理原创 2023-02-21 18:40:58 · 370 阅读 · 0 评论 -
【go】defer底层原理
golang defer原理原创 2023-02-21 16:04:24 · 508 阅读 · 0 评论 -
【go】函数调用
go函数调用原创 2023-02-21 16:01:58 · 574 阅读 · 0 评论 -
golang协程模型——可扩展的go调度设计
译自:Scalable Go Scheduler Design Doc在GMP模型出现之前,golang的协程调度只有M(工作线程)和G(goroutine)。协程切换全部依赖于全局的runq,会产生一些问题:单一的全局锁和集中的状态:全局锁空值全部的协程相关操作,如协程的创建,结束和重新调度等。这会导致高并发场景下加锁解锁的消耗过高。协程的切换问题:M之间经常会切换可执行的G,这会导致额外的开销以及延迟的增加。每个M的内存缓存:当前的内存缓存和其他缓存(堆栈等)和所有的M都相关联。实际上只有正在原创 2022-04-24 16:33:22 · 402 阅读 · 0 评论 -
sync.Once——golang单例模式
之前写的一个java的单例模式在golang中我们期望一个方法只执行一次的时候,通常会使用实例化一个sync.Once结构体,然后使用once.Do方法来包装我们需要执行的方法f。在初始化各种连接的时候非常常用。代码示例import ( "sync")// 单例对象的结构体type Singleton struct { Age int Name string Addr string}var once sync.Once// 全局变量instancevar instan原创 2022-04-21 15:17:59 · 833 阅读 · 0 评论 -
golang sort.SearchInts查找算法
源码// SearchInts 在排序的整数切片中搜索 x 并返回 Search 指定的索引。 // 如果 x 不存在,则返回值是插入 x 的索引(它可能是 len(a))。 切片必须按升序排序。func SearchInts(a []int, x int) int { return Search(len(a), func(i int) bool { return a[i] >= x })}func Search(n int, f func(int) bool) int { // 定义原创 2022-03-29 17:42:58 · 3333 阅读 · 0 评论 -
Go语言学习笔记(2)-------数据类型
go语言中的数据类型大体上分为基本数据类型和派生数据类型,其中基本数据类型主要有以下几种:布尔类型:true/false,与java一样数字类型:包括了整型的int(其中又包括有符号的int8,int16,int32,int64以及无符号的unit8,unit16,unit32,unit64)。还有浮点型的float和complex字符串类型:没错字符串在go中属于基本数据类型而派生类型主要包括了下面几种:指针类型数组类型结构化类型Channal类型函数类型切片类型接口类型Ma原创 2020-09-10 00:40:42 · 329 阅读 · 0 评论 -
Go语言学习笔记(1)-------Go环境安装以及Go的语法
首先安装与环境配置我就不贴了,与其他语言没有差别。下面是一个最简单的go程序,仅仅是输出了hello world两个单词package mainimport "fmt"func main() { fmt.Print("hello world")}输出结果虽然go语言是支持面向对象编程的,但是他并不是一个完全的面向对象语言,比如我们上面的程序就没有声明任何类相关的代码,仅仅是一个package包声明,一个impor,一个func就可以运行了。我们跑的这个文件是package main原创 2020-09-06 21:13:17 · 140 阅读 · 0 评论