golang
c0586
这个作者很懒,什么都没留下…
展开
-
大家一起学Golang——轻描淡写GC垃圾回收
GC垃圾回收垃圾回收机制是一种自动管理内存的方式,是内存资源的回收,是程序后台自动判断对象是否要回收,使得开发人员从内存管理上解脱出来。垃圾回收下列几种:引用计数标记清除三色标记分代收集C VS Go 申请内存和释放内存,看出Go GC自动管理内存,确实方便。//开辟内存空间int *p = (int*)malloc(sizeof(int));//释放空间free(p);...原创 2020-02-11 18:26:57 · 223 阅读 · 0 评论 -
大家一起学Golang——Go runtime内存分配
大家一起学Golang——Go runtime内存分配go runtime内存分配摒弃传统内存分配方式,使用自主管理,不需要每次系统调用分配内存,TCMalloc算法进行内存分配。基本策略:每次从操作系统申请大的内存,减少系统的调用将申请的大内存按照固定的大小进行划分,并以链表的形式连起来为对象分配内存时,需要从合适大小的链表取一块内存回收对象时,将小块内存重新加到链表中,以便回收...原创 2020-02-10 21:06:16 · 542 阅读 · 0 评论 -
大家一起学Golang——Go内存分区
大家一起学Golang——Go内存分区内存分区go语言提供了内存管理机制,很多高级语言对内存里省去程序员很多工作,后端服务出现内存抖动和读取命中率低问题,很容引起服务崩溃。了解Go内存管理知识,对我们开发也有很大的帮助。Go代码经过预处理、编译、汇编和链接生成可执行程序。代码区,静态区/全局区(数据区、未初始化区),堆区,栈区。代码区:CPU执行的计算机指令,只读(防止程序意外修改),...原创 2020-02-10 15:49:03 · 740 阅读 · 0 评论 -
大家一起学Golang——电子表格读取数据到Mysql数据库
大家一起学Golang——电子表格读取数据到Mysql数据库创建要先使用包 github/tealeg/xlsx具体内容参照链接:https://github.com/tealeg/xlsx查考 Reading XLSX files、Writing XLSX files部分的内容,可以看出对于excel表的文件、sheet、row和cell都有操作。读取表格中的数据放入到事先定义的结构体中...原创 2020-02-09 23:20:13 · 722 阅读 · 1 评论 -
大家一起学Golang——文件操作
大家一起学Golang——文件操作文件操作对文件操作几乎每个编程语言都有,Go后端开发中对日志操作较多。创建 、打开文件创建两种方式:func Create(name string) (file *FIle, err Error) 返回文件对象,默认权限0666func NewFile(fd uintptr, name string) *Filefunc main() { f,...原创 2020-02-09 21:44:36 · 129 阅读 · 0 评论 -
大家一起学Golang——JSON编码
大家一起学Golang——JSON编码Json编码 Struct–>Json, Map–>JsonJson解码 Json–>Struct,Json–>MapJson操作json是一种数据交换格式,完全独立于编程语言的键/值对集合的文本形式,可以存储字符串,数值,布尔值,数组等,常用于web开发中客户端与服务器之间的数据通信。形式:{“id”:1,“name...原创 2020-02-09 16:05:33 · 153 阅读 · 0 评论 -
大家一起学Golang——并发编程、goroutine、channel
大家一起学Golang——并发编程Goroutine并发channel并发的同步模型并发编程在早期的时候,CPU都是单核顺序执行机器指令,随着计算机处理器的发展,由单核上升到多核,编程语言也朝着并行化方向发展,Go语言这是在这种情况下诞生的原生支持并发的编程语言。并行编程的模型有多线程、消息传递等,Go是基于CSP模型的并发编程,通过go关键字启动Goroutine实现并发。CS...原创 2020-02-08 17:48:51 · 168 阅读 · 0 评论 -
大家一起学Golang——接口、多态
大家一起学Golang——接口、多态接口方法集多态接口接口是定义一组行为的类型,由用户定义的类型来实现,类型实现了接口全部声明的方法,称这个类型实现了这个接口。空接口:interface{}接口实现:type Person interface{ GetName() string}type Student struct{ Name string}func (p *St...原创 2020-02-07 23:11:10 · 183 阅读 · 0 评论 -
大家一起学Golang——结构体、方法
大家一起学Golang——结构体、方法结构体类型空结构体结构体标签匿名字段方法重写结构体类型结构体类型通过一系列的且唯一的字段来声明。在go中数组切片只能存储同一类型的数据,但结构体用户可以自定义将不同数据类型进行组合。type Student struct{name stringage int}初始化:st := Student{name: “Jeff”,ag...原创 2020-02-07 18:58:31 · 274 阅读 · 0 评论 -
大家一起学Golang——函数、闭包、defer、recover
大家一起学Golang——函数、闭包、defer、recover函数执行流程go代码编译完后,函数会以计算机指令的方式存放在代码区,函数定义的形参和局部变量没有调用的时候 是不占用内存,只有调用时会加载到内存中。在介绍计算机指令形式的代码在内存运行的状况前,先要说下栈(stack),几乎每个程序都使用栈,这个栈满足先进后出的顺序,保存函数调用所需要的信息,被称为堆栈帧(stack frame...原创 2020-02-07 15:59:07 · 180 阅读 · 0 评论 -
大家一起学Golang——Go基本数据类型
大家一起学Golang——Go基本数据类型数据类型命名规则命名和一般变量命名一样,字母 数字 下划线组成,不许数字开头。驼峰式命名方式,小驼峰首字母小写 如mySlice;大驼峰 如MySlice数据类型整型分为有符号和无符号两种类型:有符号:int, int8, int16, int32, int64 可以存储任何整数无符号: uint, uint8, uint16, ...原创 2020-02-06 18:02:06 · 151 阅读 · 0 评论 -
大家一起学Golang——Go语言关键字与基本语法
大家一起学Golang——Go语言关键字与基本语法Golang25个关键字关键字作用一级分类二级分类三级分类var变量声明基本结构变量与常量…const常量声明基本结构变量与常量-package包声明基本结构包管理-import包引用基本结构包管理-func函数声明基本组件函数-return函数返...原创 2020-02-06 12:29:35 · 620 阅读 · 0 评论 -
大家一起学Golang——Go语言简介与安装
一起学习Golang ——Go语言简介与安装go语言简介Go语言是有google公司推出的一门编程语言,是开源,静态编程语言,语法简洁,天生支持并发。2007年由Robert Griesemer, Rob Pike, Ken Thompson主持开发,又来加入了Ian Lance Taylor, Russ Cox等⼈,在2009年11⽉开源。go语言特点简洁 快速 安全并行 开源内...原创 2020-02-05 13:13:46 · 788 阅读 · 0 评论