在开发工程中,有时候后通过后台管理添加的文件名各种各样的,严格来说要对图片进行重命名的(例如:图片上传的是中文名,如果返回给前端,都是编码汉字编码以后得名字),那么Go语言开发如何对件进行重命名的呢,通过Go语言可以简单…
标签:go语言
golang net/dial.go 阅读笔记
golang net/dial.go 实际上dial.go这个文件中并没有实际发起连接的部分,基本上是在为真正发起连接做一系列的准备,比如:解析网络类型、从addr解析ip地址。。。实际发起连接的函数在tcpsock_p…
2018最新精选的Go框架,库和软件的精选列表 一 https://awesome-go.com/
音频和音乐 用于操纵音频的库。 flac – Native Go FLAC解码器。 flac – Native Go FLAC解码器。 gaad – Native Go AAC比特流解…
Go语言基础——goroutine和channel
go语言有一个很重要的特性就是 goroutine, 我们可以使用 goroutine 结合 channel 来开发并发程序。 1、goroutine简介 goroutine是go语言中的并发执行单元,我们可以将多个任务…
Go语言打印调用堆栈
这两天看Go的代码,呃,协程太多,无数个携程调用了一个方法,彻底看不清了,所以就想到是不是可以把调用堆栈打印出来。 查了一下,发现Go的 runtime/debug 库可以把调用堆栈打出来。下面看个例子: package…
go匿名函数(闭包)
GO语言的匿名函数(anonymous function),其实就是闭包.是指不需要定义函数名的一种函数实现方式, 可以包含自由(未绑定到特定对象)变量的代码块,这些变量不在这个代码块内或者任何全局上下文中定义,而是在…
Go beego的logs源码解读
beego的日志处理支持多种引擎、多种日志级别的输出,也可以设置输出方式(包括是否输出文件名和行号、同步输出或者异步输出等)。 本文将主要介绍一下beego是如何实现控制台和文件两个引擎的日志输出、日志消息如何构造以及如…
Golang下的并发基础
并发concurrency goroutine只是由官方实现的超级”线程池”,每个实例4-5kb的栈内存占用和由于实现机制而大幅减少的创建和销毁开销是造成golang高并发的根本原因。 并发并不是并行: concurre…
go module 学习
go 版本 go version go1.11 darwin/amd64 go module 使用说明 go module 默认为auto模式。 开启配置:export GO111MODULE=on 关闭配置:expor…
Go语言能够取代Java,成为下一个王者吗?
近几年来,Go语言真是越来越火了。我也做过几个Go语言的项目了,我们公司很多微服务的项目也在由Java往Go上面转了。我们来看看Tiobe世界编程语言排行的最新排名,Go已经从去年的第14名上升到今年的第十名了。虽然Ja…
Golang 安装和配置
1. Windows下的安装和基本配置 打开官网 https://golang.org/ ,点击红框中的 Download Go 图:Golang 主页 进入到下载页面,向下滚动到最新版本详细的下载列表。 图:下载页面 …
一日一学_Go语言Context(设计及分析)
context简单概述: Go服务器的每个请求都有自己的goroutine,而有的请求为了提高性能,会经常启动额外的goroutine处理请求,当该请求被取消或超时,该请求上的所有goroutines应该退出,防止资源泄…