自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 go语言修炼之九-并发channel通信

go语言修炼之九channelchannel说明 channel 在之前第六、七章,介绍了go语言的协程并发机制,以及主程与协程采用sync包进行阻塞等待的工作方案。这次看看go语言官方推荐的协程并发解决方案–channel。 channel解决两个问题: 一是协程间的数据交互(在六、七节里面没有涉及) 二是协程间的阻塞方式 channel说明 创建一个channel用关键字make,指定类型为chan,关闭一个channel用close 保持良好习惯,使用完的channel就关闭,在数据输入侧(生产侧)进

2020-06-23 14:13:18 236

原创 go语言修炼之八-type用法小结

go语言修炼之八-type用法小结 今天回顾一下type关键字用法。在go语言里type关键字除了c、c++里别名定义的用法,还有更广泛的外延使用方式,同时也是使用类、接口等操作的关键技术。有必要小结一下。 type用法 1、别名 2、定义简单类型 3、定义复杂类型 复杂类型包括: struct interface func 说明 一、别名: type MT = string var aaa MT aaa = "i am string" fmt.Printf(aaa) 这里指定string的一个

2020-06-17 20:10:33 450

原创 go语言修炼之七-并发

go语言修炼之七并发 并发 继续拓展上一节的代码,在最后部分,我们采用time.Sleep(time.Second * 5),等待5秒的方案来让main等待work1和work2完成,因为消耗少,所以work都在5秒内完成了工作,但实际工程中一个事务处理也许要超过5秒,靠给定等待时间的方案就不太适用了。 这里需要采用更精准的机制来应对此问题。引入go的默认包sync。 package main import ( "fmt" "sync" ) func work1(n *sync.WaitGroup)

2020-06-09 23:24:30 201 1

原创 go语言修炼之六-并发

go语言修炼之六并发说明尾声 并发 并发简单讲,就是同时进行多事务处理。比如做一个即时通讯工具的视频聊天功能,对聊天双方用户来讲,每个用户侧,程序需要同时处理音频和视频,并展示出来。 并发机制,到目前来讲有三种方式。 进程----线程----协程 每后一个机制,都进一步优化了系统开销,即: 多进程的并发,消耗系统资源最多。 多线程的并发,消耗系统资源次多。 多协程的并发,消耗系统资源最少。 说明 最后的协程方式,就是go语言特有的,也是go号称的特点之一。使用很简单。 用关键字 go 在当前主程中开启协程。

2020-06-09 18:42:12 157

原创 go语言修炼之五

go语言修炼之五面向对象基础-接口说明接口应用尾声 面向对象基础-接口 我们继续golang面向对象设计的必要知识:接口 说明 在go语言里,接口是一种类型,用type描述,指定类型为interface,里面只包含该接口的方法,不包含变量。 type UserReader interface { Read() string Write(string) string ShowMe() } 这里对比下我们之前学习的结构体类型和接口类型。(因为接口也是一种类型,同type struct一样,所以type

2020-06-07 15:23:26 157

原创 go语言修炼之四

go语言修炼之四面向对象基础练习需求过程 面向对象基础练习 在了解go基本知识结构之后,可以打造一些基础的模块,检验下之前的知识 点 需求 开发会员管理子模块,满足会员基本数据展示、增、删、改需求。抽象为单独的模块(类) 会员基本属性:会员ID,会员名称,会员所属组,会员现金余额,会员积分余额,会员是否有效,修改时间。 过程 go语言构造面向对象方式,用特定数据结构 struct + 属性+方法 在mylib 目录下创建包文件,user.go,内容如下 package mylib import ( "f

2020-06-02 18:40:21 153

原创 go语言修炼之三

go语言修炼之三今日修炼要求尾声 今日修炼 基本知识结构,网上优秀文章很多,建议自学 :)。 要求 变量:常量,变量,系统保留字… 函数:创建规范、值传递、生命周期… 基础逻辑结构:if/else for switch select… 尾声 感觉差不多再进入下一节,本节建议时间花销2-3天 ...

2020-06-02 11:02:29 118

原创 go语言修炼之二

go语言修炼之二今日修炼简单说明练习尾声 今日修炼 需要自行简单学习下golang语言开发环境搭建,学习使用默认的fmt库 打印“hello world”,网上教程很多,开发IDE我用的vscode。 简单说明 一个hello.go文件内容如下 package main import "fmt" func main() { fmt.Printf("Hello China.\n") } 嗯,下面是执行两种方式: go build hello.go 构建出可执行文件 hello.exe(wind

2020-06-02 10:37:43 179

原创 go语言修炼之一

go语言修炼之一前言基础内容 前言 整理学习go语言过程,结合实际产品案例,开源共享。 基础 希望要具备基础编码能力,接触go之前,也就用过几天python与php,懂点sql语句,也算是零基础起步学习。大家跟我一起来吧。 内容 今日课程结束! 成功在于正式开始! 下定决心开始就是今天主要的任务! 我们已经完成了! ...

2020-06-02 09:18:02 148 1

空空如也

空空如也

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

TA关注的人

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