-
Golang调用windows下的dll动态库中的函数
所属栏目:[大数据] 日期:2020-12-16 热度:91
Golang调用windows下的dll动态库中的函数 使用syscall调用。 package main import ( "fmt" "syscall" "time" "unsafe" ) const ( MB_OK = 0 x00000000 MB_OKCANCEL = 0 x00000001 MB_ABORTRETRYIGNORE = 0 x00000002 MB_YESNOCANCEL = 0 x00000003 MB_YESNO[详细]
-
golang以daemen后台形式运行
所属栏目:[大数据] 日期:2020-12-16 热度:116
golang的控制台程序运行在linux上后, terminal如果被断开了(比如ssh的终端关闭掉后),golang的程序就会被关闭。 我们如果想用golang运行一个web服务器,这样就不行。 我想到了用linux的screen命令,可以后台运行一个进程。 于是,创建一个screen screen -[详细]
-
2018: 《Go语言高级编程》正式开源
所属栏目:[大数据] 日期:2020-12-16 热度:195
https://github.com/chai2010/advanced-go-programming-book 本书针对Go语言有一定经验,想深入了解Go语言各种高级用法的开发人员,正在开始编写中。 项目正在开发中,欢迎关注[详细]
-
go语言常见陷阱
所属栏目:[大数据] 日期:2020-12-16 热度:59
go语言常见陷阱 (英文原文)[https://deadbeef.me/2018/01/go-gotchas] Range 在golang中我们经常用range来遍历slice或chan,如果要更改slice中的成员应该怎么做?下面代码要把动物园中所有动物的腿变为999 type Animal struct { name string legs int } func[详细]
-
golang并发下载多个文件
所属栏目:[大数据] 日期:2020-12-16 热度:197
背景说明 假设有一个分布式文件系统,现需要从该系统中并发下载一部分文件到本地机器。 已知该文件系统的部分节点ip,以及需要下载的文件fileID列表,并能通过这些信息来拼接下载地址。 其中节点ip列表保存在xx_node.txt, 要下载的fileID保存在xx_fileID.txt[详细]
-
golang中job队列实现方法
所属栏目:[大数据] 日期:2020-12-16 热度:102
THE NO-JOB-QUEUE JOB QUEUE THE SIMPLEST JOB QUEUE PRODUCER THROTTLING ENQUEUEING WITHOUT BLOCKING STOPPING THE WORKER WAITING FOR THE WORKER WAITING WITH A TIMEOUT CANCELLING WORKERS CANCELLING WORKERS WITHOUT CONTEXT A POOL OF WORKERS go[详细]
-
golang的初认识以及实践
所属栏目:[大数据] 日期:2020-12-16 热度:142
这篇博客也算当做我这几点学习go语言的一个小总结和小复习吧 golang的简单介绍 Go 是一个开源的编程语言,它能让构造简单、可靠且高效的软件变得容易。Go是从2007年末由Robert Griesemer,Rob Pike,Ken Thompson主持开发,后来还加入了Ian Lance Taylor,Russ[详细]
-
golang 基础之 import 详解
所属栏目:[大数据] 日期:2020-12-16 热度:105
转自:https://gocn.io/article/159 import golang 中的模块是通过 package 进行组织管理的,通过 import 进行导入的 几种包的导入形式: 导入标准库 import "fmt",是最常用导入标准的形式 import f "fmt",为标准库起一个别名,而后调用 fmt.Println("")[详细]
-
golang调用c++dll获取mac地址
所属栏目:[大数据] 日期:2020-12-16 热度:156
转自:https://golangtc.com/t/5a0556b34ce40d3bf47f606f 功能: c++实现获取主机的的内存大小,系统用户名,mac地址和硬盘序列号,然后封装成dll给go调用,并提供go调用的接口。github传送门 GIT 地址https://github.com/easyAation/go-mac 运行截图: c++部[详细]
-
Kubernetes上的一些常见标签
所属栏目:[大数据] 日期:2020-12-16 热度:132
beta.kubernetes.io/arch=amd64 Node的label,通过golang的runtime.GOOS来获取 kubernetes.io/hostname Node的label,node的hostname,可以通过kubelet参数–hostname-override 来修改 beta.kubernetes.io/instance-type Node的label,通过cloudprovider来定义[详细]
-
golang 继承
所属栏目:[大数据] 日期:2020-12-16 热度:119
package mainimport "fmt"type Base struct { Name string}func (b *Base) SetName(name string) { b.Name = name}func (b *Base) GetName() string { return b.Name}// 组合,实现继承type Child struct { base Base // 这里保存的是Base类型}// 重写GetNam[详细]
-
Golang 1.9的主要更新
所属栏目:[大数据] 日期:2020-12-16 热度:51
因网上这个资料难查,因此转载一份,原文请点击 Go1.9的主要更新 golang每半年更新一次版本,上次最新的版本是Go1.8,而Go1.9将在今年8月释出。 Go1.9中语法的更改只有一个,那就是增加了 类型别名 ,大部分更改是工具链,运行时,库的更改, 语法的更改 Go1.9[详细]
-
golang中struct成员变量的标签(Tag)说明和获取方式
所属栏目:[大数据] 日期:2020-12-16 热度:59
转自:http://www.01happy.com/golang-struct-tag-desc-and-get/ 在处理json格式字符串的时候,经常会看到声明struct结构的时候,属性的右侧还有小米点括起来的内容。形如: type User struct { UserId int `json:"user_id" bson:"user_id"` UserName string[详细]
-
自营连接池工具
所属栏目:[大数据] 日期:2020-12-16 热度:195
刚刚开始写连接池时的一些想法: 1、连接池最重要的是在于空闲、忙碌和峰值时连接的操作逻辑; 2、连接池工具跟mysql、redis、tcp、没有什么特定的关系,只要生产模式是io.Closer接口即可; 3、连接池多数情况下在连接使用释放后会进行Rollback,这里的操作[详细]
-
sublime 3 + Golang + 代码补全
所属栏目:[大数据] 日期:2020-12-16 热度:196
关于Golang的部分 配置golang的环境变量 // 按自己Golang的具体安装情况填写GOROOT=E: GO mount GOPATH=E: GO myGo GOBIN= %GOPATH%bin 注意:GOPATH(工作空间)目录下要有三个目录:bin、pkg、src。 %GOROOT%bin添加至Path环境变量 让sublime 3支[详细]
-
如何在Golang发送POST请求?
所属栏目:[大数据] 日期:2020-12-16 热度:195
我发现go http包相当混乱。我认为客户端和服务器应该分为两个不同的包,也许第三与常见的东西。 无论如何尝试做一个POST请求,但我不能得到它完成。在另一边没有收到。 这是它应该如何工作吗?我知道PostForm功能,但我认为我不能使用它,因为它不能与httput[详细]
-
golang 类型强转
所属栏目:[大数据] 日期:2020-12-16 热度:90
func main() {content:="{"dd":"dd","ff":["lent"]}"var v interface{}d8(content,v)d9(content,v)}func d9(content string,vv interface{}){err := json.Unmarshal([]byte(content),vv)if err != nil{panic(err)} else{// 如果有ok做判断,强转失败[详细]
-
Golang百万级高并发实践
所属栏目:[大数据] 日期:2020-12-16 热度:109
写在前面 Go语言作为新兴的语言,最近发展势头很是迅猛,其最大的特点就是原生支持并发。它使用的是“协程(goroutine)模型”,和传统基于 OS 线程和进程实现不同,Go 语言的并发是基于用户态的并发,这种并发方式就变得非常轻量,能够轻松运行几万并发逻辑[详细]
-
基于go+vue实现的golang每日新闻浏览与检索平台
所属栏目:[大数据] 日期:2020-12-16 热度:168
介绍 gonews是基于 go+vue 实现的golang每日新闻浏览与检索平台 项目地址:Github 线上Demo:GoNews 数据来源:GoCN每日新闻 项目截图 部署 获取新闻数据 git clone https://github.com/gocn/news /data/news 获取源码 go get -u github.com/mikemintang/gon[详细]
-
如何传递可变长度参数作为Golang中另一个函数的参数?
所属栏目:[大数据] 日期:2020-12-16 热度:76
如何在Go中传递可变长度参数?例如,我想打电话 func MyPrint(format string,args ...interface{}) { fmt.Printf("[MY PREFIX] " + format,???)}// to be called as: MyPrint("yay %d",213) // or MyPrint("yay")// or MyPrint("yay %d %d",123,234) 啊发现[详细]
-
gRPC
所属栏目:[大数据] 日期:2020-12-16 热度:166
gRPC入门 SIMPLE RPC 客户端 server api SERVER-to-client streaming RPC 定义接口 客户端 server api A CLIENT-to-server streaming RPC 定义接口 客户端 server api A Bidirectional streaming RPC 定义接口 客户端 server api 遇到问题 gRPC入门 刚学习gR[详细]
-
golang 对象转换
所属栏目:[大数据] 日期:2020-12-16 热度:101
#golang struct转数组 //转换数组类型 func coventArray(value interface{}) []interface{} {size := reflect.ValueOf(value).Len()list := make([]interface{},size)slice := reflect.ValueOf(value).Slice(0,size)for index := 0; index size; index++ {li[详细]
-
golang 数据库 空字段 问题
所属栏目:[大数据] 日期:2020-12-16 热度:108
代码: package mainimport (_ "github.com/go-sql-driver/mysql""fmt""database/sql")func main() {d13()fmt.Println("--------------------------")d14()}func d13(){var err errorconnect := "f:f@tcp(192.168.1.0:3306)/lr1"db,err := sql.Open("mysql",[详细]
-
golang中protocolbuff的使用
所属栏目:[大数据] 日期:2020-12-16 热度:105
protocolbuff是Google推出的开源序列化协议,几乎支持市面上所有主流语言。用作服务器与服务器或者客户端与服务器的网络传输协议再合适不过了。简单写个demo。 项目结构: ProtocolBuff ----Makefile ----src ----github.com/golang/protobuf ----main ----p[详细]
-
Go语言入门教程-介绍和安装
所属栏目:[大数据] 日期:2020-12-16 热度:55
备注: 由于年前工作事情较多,我会在过年前完成翻译整理工作 这是go语言入门的第一篇教程 什么是Golang Go是谷歌创建的,开放源代码、编译型和静态类型的编程语言. Golang 的主要关注点在使开发高可用和可伸缩的web应用程序更加简单和容易. 为什么选择Golang[详细]
