这是网站公告,主题配置修改

链接01链接02链接03

使用教程 第62页


11月25日

如何在VScode 中编译多个Go文件

作者:administrator 分类:使用教程 浏览:889 评论:0
如何在VScode 中编译多个Go文件

         在使用VScode编译多个go文件多次遇到过一个问题:无法找到对应的函数。具体提示在好像是:在GOPATH和GOROOT路径中都没有...

11月25日

Go之集合slice的实现

作者:administrator 分类:使用教程 浏览:897 评论:0
Go之集合slice的实现

Slice(切片) 切片和数组类似,可以把它理解为动态数组。切片是基于数组实现的,它的底层就是一个数组。对数组任意分隔,就可以得到一个切片。现在我们通过一个例子来更好地理解它,同样还是基于前面的 array。 基于数组生成切片...

11月25日

详解Golang并发操作中常见的死锁情形

作者:administrator 分类:使用教程 浏览:945 评论:0

什么是死锁,在Go的协程里面死锁通常就是永久阻塞了,你拿着我的东西,要我先给你然后再给我,我拿着你的东西又让你先给我,不然就不给你。我俩都这么想,这事就解决不了了。 第一种情形:无缓存能力的管道,自己写完自己读 先上代码: fu...

11月25日

golang panic及处理机制

作者:administrator 分类:使用教程 浏览:938 评论:0
golang panic及处理机制

一 panic机制   panic会将这个异常不断向上抛出,直到有地方处理它,如果有处理,则不会再向上抛出。倘若没有处理,那么最终会导致main挂掉.  golang虽然没有try catch机制,却有一种类似的recover机制...

11月25日

Golang并发操作中常见的读写锁详析

作者:administrator 分类:使用教程 浏览:934 评论:0

互斥锁简单粗暴,谁拿到谁操作。今天给大家介绍一下读写锁,读写锁比互斥锁略微复杂一些,不过我相信我们今天能够把他拿下! golang读写锁,其特征在于 读锁:可以同时进行多个协程读操作,不允许写操作 写锁:只允许同时有一个协程进...

11月25日

golang 语言中错误处理机制

作者:administrator 分类:使用教程 浏览:818 评论:0

与其他主流语言如 Javascript、Java 和 Python 相比,Golang 的错误处理方式可能和这些你熟悉的语言有所不同。所以才有了这个想法根大家聊一聊 golang 的错误处理方式,以及实际开发中应该如何对错误进行处理。因为分...

11月25日

Go 语言中的死锁问题解决

作者:administrator 分类:使用教程 浏览:942 评论:0

死锁 死锁的4个条件 不可剥夺 线程已经获得的资源,在未使用完之前,不能被其他线程剥夺,只能在使用完后自己释放。 请求保持 线程 T1 保持了一个资源 R1 占用,但是又提出另外一个资源 R2 请求,此时,资...

11月25日

Go 第三方库之类型转换问题

作者:administrator 分类:使用教程 浏览:925 评论:0

强类型语言有它的优势,但也有不便利的地方,最典型的就是类型转换。Golang 作为一门强类型语言,而且不支持隐式类型转换,因此这个问题更突出。虽然 Go 提供了不少方式进行类型转换,包括相关的标准库,比如 strconv 包。 然而,st...

11月25日

Go中Channel发送和接收操作指南

作者:administrator 分类:使用教程 浏览:761 评论:0

前言 先来看一道面试题: 对已经关闭的 chan 进行读写,会怎么样?为什么? 在上一篇学习 Go 协程的文章中,知道 go 关键字可以用来开启一个 goroutine 进行任务处理,但多个任务之间如果需要通信,就需要用到通...

11月25日

Go中的条件语句Switch示例详解

作者:administrator 分类:使用教程 浏览:912 评论:0

Switch简介 Go的switch的基本功能和C、Java类似: switch 语句用于基于不同条件执行不同动作,每一个 case 分支都是唯一的,从上至下逐一测试,直到匹配为止。 匹配项后面也不需要再加 break。...

11月25日

golang time常用方法详解

作者:administrator 分类:使用教程 浏览:937 评论:0

说明         在golang中,时间转换都会通过Time类型做一系列转换。主要包含,时间戳和时间字符串,时间字符串转换成另外的格式。总之所有的转换都是通过Time类型做中间转换。参考文档:h...

11月25日

关于golang利用channel和goroutine完成统计素数的思路

作者:administrator 分类:使用教程 浏览:872 评论:0
关于golang利用channel和goroutine完成统计素数的思路

1. 需求 要求统计1-200000的数字中,哪些是素数?这个问题在本章开篇就提出来了,可以使用goroutine和channel来完成 2.分析思路 传统的方法,就是使用一个循环,循环的判断各个数是不是素数【ok】 使用并发/并行...

11月25日

Go应该如何实现二级缓存

作者:administrator 分类:使用教程 浏览:928 评论:0

一、需求 实现二级缓存 程序运行起来后提示:“请输入命令:”,如果输入getall,查询并显示所有人员的信息 第一次时查询mysql并将结果缓存在redis,设置60秒的过期时间 以后的每次查询,如果redis有数据就从...

11月25日

Go中使用加密算法的方法

作者:administrator 分类:使用教程 浏览:902 评论:0
Go中使用加密算法的方法

哈希算法  md5 128bit,16字节 如:md5 (“hello world!”) = fc3ff98e8c6a0d3087d515c0473f8677 // 32位16进制数字 func Test(...

11月25日

Golang中实现简单的Http Middleware

作者:administrator 分类:使用教程 浏览:780 评论:0
Golang中实现简单的Http Middleware

本文主要针对Golang的内置库 net/http 做了简单的扩展,通过添加中间件的形式实现了管道(Pipeline)模式,这样的好处是各模块之间是低耦合的,符合单一职责原则,可以很灵活的通过中间件的形式添加一些功能到管道中,一次请求和响应...

11月25日

Go 协程超时控制的实现

作者:administrator 分类:使用教程 浏览:903 评论:0

Go 协程超时控制 Select 阻塞方式 Context 方式 先说个场景: 假设业务中 A 服务需要调用 服务B,要求设置 5s 超时,那么如何优雅实现? Select 超时控制 考虑是否可以用 select...

11月25日

Go语言运算符案例讲解

作者:administrator 分类:使用教程 浏览:805 评论:0

算数运算符 算数运算符和C语言几乎一样 运算符 描述 实例 + 相加 A + B - 相减 A...

11月25日

Go语言指针使用分析与讲解

作者:administrator 分类:使用教程 浏览:947 评论:0
Go语言指针使用分析与讲解

普通指针 和C语言一样, 允许用一个变量来存放其它变量的地址, 这种专门用于存储其它变量地址的变量, 我们称之为指针变量 和C语言一样, Go语言中的指针无论是什么类型占用内存都一样(32位4个字节, 64位8个字节)...

11月25日

Go语言异常处理案例解析

作者:administrator 分类:使用教程 浏览:907 评论:0

异常处理 程序运行时,发生的不被期望的事件,它阻止了程序按照程序员的预期正常执行,这就是异常 golang中提供了两种处理异常的方式 一种是程序发生异常时, 将异常信息反馈给使用者 一种是程序发生异常时,...

11月25日

聊聊Golang的语言结构和变量问题

作者:administrator 分类:使用教程 浏览:885 评论:0
聊聊Golang的语言结构和变量问题

一、语言结构和注意事项 package main // 声明 main 包,表明当前是一个可执行程序 import "fmt" // 导入内置的fmt包 func main(){ // main函数,是程序执行的入口...

11月25日

Go并发编程之sync.Once使用实例详解

作者:administrator 分类:使用教程 浏览:888 评论:0

一.序 单从库名大概就能猜出其作用。sync.Once使用起来很简单, 下面是一个简单的使用案例 package main import ( "fmt" "sync" ) func main() { v...

11月25日

Go获取与设置环境变量的方法详解

作者:administrator 分类:使用教程 浏览:837 评论:0

前言 今天的文章比较基础,但却是必须掌握的,而且本文有些内容,也许你之前没想过。希望这篇文章能够让你理解环境变量并掌握 Go 环境变量相关操作。 01 从安装 Go 说起 其实不止是安装 Go,其他语言一本也会有类似的问题。一般来说...

11月25日

Go 互斥锁和读写互斥锁的实现

作者:administrator 分类:使用教程 浏览:896 评论:0

先来看这样一段代码,所存在的问题: var wg sync.WaitGroup var x int64 func main() { wg.Add(2) go f() go f() wg.Wait() fm...