上一页 1 ··· 77 78 79 80 81 82 83 84 85 ··· 234 下一页

2020年3月4日

Golang sync.NewCond条件锁的用法

摘要: package main import ( "fmt" "sync" "time" ) func main() { c := sync.NewCond(&sync.Mutex{}) queue := make([]interface{}, 0, 10) removeFromQueue := func 阅读全文

posted @ 2020-03-04 12:05 ExplorerMan 阅读(800) 评论(0) 推荐(0)

golang channel多生产者和多消费者实例

摘要: package main import ( "fmt" "time" ) func consumer(cname string, ch chan int) { //可以循环 for i := range ch 来不断从 channel 接收值,直到它被关闭。 for i := range ch { 阅读全文

posted @ 2020-03-04 12:04 ExplorerMan 阅读(5395) 评论(0) 推荐(0)

2020年3月3日

Go语言的那些坑

摘要: Golang是我最喜欢的一门语言,它简洁、高效、易学习、开发效率高、还可以编译成机器码… 虽然它一出世,就饱受关注,而且现在在市面上逐渐流行开来,但是,它毕竟是一门新兴语言,还有很多让人不太习惯的地方(即坑,(^__^)),我作为新手,一边学习,一边踩坑,希望对其他人有借鉴作用。 文件名字不要轻易以 阅读全文

posted @ 2020-03-03 12:01 ExplorerMan 阅读(481) 评论(0) 推荐(0)

2020年3月2日

go语言标准库sync/atomic中的原子操作

摘要: 原子操作吧其他同步技术更底层。他们没有锁,基本是在硬件层面实现的。事实上,他们经常被用来实现其他同步技术。 请注意,下面的许多例子并发并发编程。他们仅用于来展示如何使用标准库中的sync/atomic包中的原子函数。 go语言中的原子操作概览 标准库中的sync/atomic对整数类型T(包含int 阅读全文

posted @ 2020-03-02 18:19 ExplorerMan 阅读(510) 评论(0) 推荐(0)

理解 Go 标准库中的 atomic.Value 类型

摘要: 在 Go 语言标准库中,sync/atomic包将底层硬件提供的原子操作封装成了 Go 的函数。但这些操作只支持几种基本数据类型,因此为了扩大原子操作的适用范围,Go 语言在 1.4 版本的时候向sync/atomic包中添加了一个新的类型Value。此类型的值相当于一个容器,可以被用来“原子地"存 阅读全文

posted @ 2020-03-02 17:56 ExplorerMan 阅读(1065) 评论(0) 推荐(0)

go-redis 源码分析:连接池

摘要: 笔者最近在项目中基于 go-redis 实现 Redis 缓存优化性能。go-redis 是一个 Go 语言实现的 Redis 客户端,既然是网络服务的客户端,为了高效利用有限资源,避免重复创建和销毁网络连接,就必需对其进行管理。而资源管理又是编程领域中的一个重点难点,抱着对是否能利用 Go 语言语 阅读全文

posted @ 2020-03-02 17:33 ExplorerMan 阅读(1785) 评论(0) 推荐(0)

golang 中 sync.Mutex 和 sync.RWMutex

摘要: 介绍 golang 中的 sync 包实现了两种锁: Mutex:互斥锁 RWMutex:读写锁,RWMutex 基于 Mutex 实现 Mutex(互斥锁) Mutex 为互斥锁,Lock() 加锁,Unlock() 解锁 在一个 goroutine 获得 Mutex 后,其他 goroutine 阅读全文

posted @ 2020-03-02 17:24 ExplorerMan 阅读(471) 评论(0) 推荐(0)

2020年2月18日

Golang 调用 aws-sdk 操作 S3对象存储

摘要: 前言 因为业务问题,要写一个S3对象存储管理代码,由于一直写Go,所以这次采用了Go,Go嘛,快,自带多线程,这种好处就不用多说了吧。 基础的功能 查看S3中包含的bucket bucket中的文件/文件夹 bucket的删除 bucket的创建 bucket的文件上传 bucket的文件下载 bu 阅读全文

posted @ 2020-02-18 18:38 ExplorerMan 阅读(5635) 评论(0) 推荐(0)

2020年2月12日

grpc proto字段对应

摘要: 数据类型 这里直接引用官方文档的描述: .protoC++JavaPythonGoRubyC# double double double float float64 Float double float float float float float32 Float float int32 int3 阅读全文

posted @ 2020-02-12 21:14 ExplorerMan 阅读(2386) 评论(0) 推荐(0)

2020年2月7日

Go Context

摘要: 1、什么是Context Context通常被译作上下文,它是一个比较抽象的概念。在公司技术讨论时也经常会提到上下文。一般理解为程序单元的一个运行状态、现场、快照,而翻译中上下又很好地诠释了其本质,上下上下则是存在上下层的传递,上会把内容传递给下。在Go语言中,程序单元也就指的是Goroutine。 阅读全文

posted @ 2020-02-07 14:36 ExplorerMan 阅读(274) 评论(0) 推荐(0)

上一页 1 ··· 77 78 79 80 81 82 83 84 85 ··· 234 下一页

导航