-
golang学习的点点滴滴:锁的使用
所属栏目:[大数据] 日期:2020-12-16 热度:99
packagemainimport("fmt""sync""runtime")varcounterint=0funcCount(lock*sync.Mutex){lock.Lock()counter++fmt.Println(counter)lock.Unlock()}funcmain(){lock:=sync.Mutex{}fori:=0;i10;i++{goCount(lock)//并发执行}for{lock.Lock()//锁定c:=counterlock[详细]
-
golang学习的点点滴滴:channel缓冲区
所属栏目:[大数据] 日期:2020-12-16 热度:90
创建带有缓冲区的channel: ch := make(chan int,10) 则该缓冲区最多可以不断接收10次写入,然后10次读出 packagemainimport"fmt"import"strconv"funcmain(){ch:=make(chanint,10)//创建一个具有10个缓存区的channelfor{select{casech-1:fmt.Println("readda[详细]
-
Golang获取本地计算机的MAC地址
所属栏目:[大数据] 日期:2020-12-16 热度:184
Golang获取本地计算机的MAC地址 最近在写一个小程序需要获取到本地计算机的MAC才能进入下一步操作; 然后反了很久的golang库都没有看到能够直接获取到计算机MAC地址的模块;在Google和百度之后也没有发现有其他网友写过相关的内容; 后来又回到Golang在线doc[详细]
-
Golang的第一天
所属栏目:[大数据] 日期:2020-12-16 热度:151
今天算是自己学习GO的第一天,之所以学习go,一是因为朋友推荐了好几次,而是自己打算将游戏开发整个流程过一遍,搞清楚客户端与服务端是到底怎么回事,特别是怎么联系在一起工作的。 感谢无闻老师分享的go视频教程,对于初学者来说,帮助不可谓不小,听了老[详细]
-
Golang第二天
所属栏目:[大数据] 日期:2020-12-16 热度:96
关于make的说明 普通形式:v := make([]int,100) make仅仅适用于map,slice,channel,并且返回的不是指针,应当使用new获取特定的指针 可总结为: new(T)返回*T指向一个零值T make(T)返回初始化后的T Goroutine通过通信来共享内存,而不是通过共享内存来通信[详细]
-
golang实现icmp中的ping功能
所属栏目:[大数据] 日期:2020-12-16 热度:55
package mainimport ("fmt""net""os")func checkSum(msg []byte) uint16 {sum := 0len := len(msg)for i := 0; i len-1; i += 2 {sum += int(msg[i])*256 + int(msg[i+1])}if len%2 == 1 {sum += int(msg[len-1]) * 256 // notice here,why *256?}sum = (sum[详细]
-
Golang第三天
所属栏目:[大数据] 日期:2020-12-16 热度:171
不得不说一句,我开始写的部分笔记没有发表,只是保存起来,为什么现在看不到了呢 ------------------------------------ --------------------------------------- 不得不说的 channel 1、channel只能使用make 来创建 2、channel分为两种:一种是有buffer的[详细]
-
学习笔记:channel的初步理解
所属栏目:[大数据] 日期:2020-12-16 热度:122
channel会阻塞,阻塞的时候系统会继续顺序调用其他goroutine,main()也是一个goroutine,只是最先被执行。 看一个代码: !-- lang:shell --package mainimport ("fmt")func display(msg string,c chan bool) {fmt.Println(msg)c - truefmt.Printf("end %s n[详细]
-
Golang在Ubuntu 上使用Oracle数据库
所属栏目:[大数据] 日期:2020-12-16 热度:66
一、安装Oracle的OCI套件 1、OCI下载链接页面下载(instantclient-basic,instantclient-sdk) http://www.oracle.com/technetwor ... t/index-097480.html 2、解压缩到同一个目录下,比如:instantclient_12_1 3、root权限移动文件夹到目录 /usr/lib 下 2、[详细]
-
Golang Template source code analysis(Parse)
所属栏目:[大数据] 日期:2020-12-16 热度:98
This blog was written at go 1.3.1 version. We know that we use template thought by followed way: func main() {name := "waynehu"tmpl := template.New("test")tmpl,err := tmpl.Parse("hello {{.}}")if err != nil {panic(err)}err = tmpl.Execute(os[详细]
-
golang的mahonia字符集转换工具用法
所属栏目:[大数据] 日期:2020-12-16 热度:117
本打算用iconv-go的,但是编译后出很多问题,还找不到cannot find -liconv,因时间问题就暂时改用mahonia。 下载mahonia代码,放在某个地址,然后引用该地址(细节空闲了补); 然后如下 将byte数组转换成指定字符集: 关键语句如下 d:=NewDecoder(目标字符[详细]
-
go(golang)之slice的小想法1(同步sigmentfault)
所属栏目:[大数据] 日期:2020-12-16 热度:92
slice,是go中一个很重要的主题。我们不用切片来表述,因为这里的切片特指的是数组的切片。 先给slice下个定义吧: Slice expressions construct a substring or slice from a string,array,pointer to array,or slice. There are two variants: a simple fo[详细]
-
Golang实现将IP地址转换为十进制
所属栏目:[大数据] 日期:2020-12-16 热度:127
将IP地址转换为十进制工具IPConversionTools 我经常会有吧IP/Gateway/Mask/DNS这些IP地址信息转换为十进制的; 就像这么这样的 192.168.100.200 IP地址3232261320 十进制 我之前都是手动打开计算器;然后一个一个计算 像这样 IP地址: 192.168.100.200十六进[详细]
-
golang里使用高性能kv库leveldb
所属栏目:[大数据] 日期:2020-12-16 热度:77
golang实现的leveldb,是由leveldb原作者写的,所以大家可以放心大胆使用。使用方法如下: https://github.com/syndtr/goleveldb/blob/master/README.md godoc地址如下: http://godoc.org/github.com/syndtr/goleveldb/leveldb[详细]
-
go包翻译整合版,发布在coding.net
所属栏目:[大数据] 日期:2020-12-16 热度:79
其实我做好一段时间了,但是一直有些犹豫。因为之前发的,实在没啥反应。大家知道辛辛苦苦那么久,结果连点声都没有实在很让人失望的。 不过最终我还是决定发出来。放在coding.net了,也部署了演示。 演示地址 项目地址 osc也发布了 演示地址 项目地址 我不[详细]
-
golang资料
所属栏目:[大数据] 日期:2020-12-16 热度:139
http://pkgdoc-liudiwu.coding.io/[详细]
-
golang的指针receiver和非指针receiver的区别?
所属栏目:[大数据] 日期:2020-12-16 热度:176
golang的指针receiver和非指针receiver的区别? 最大的区别应该是指针传递的是对像的引用,这样在方法里操作的时候可以动态修改对像的属性值。 非指针传递的是对像的拷贝。 这个应该和PHP的引用的用法差不多。 package mainimport ("fmt")type Person struct[详细]
-
golang中bytes包用法
所属栏目:[大数据] 日期:2020-12-16 热度:96
本文转自 Golove的博客http://www.cnblogs.com/golove/p/3287729.html bytes 包中的函数和方法 // bytes 包实现了用于操作 []byte 的函数,类似于 strings 包中的函数 // bytes.go ------------------------------------------------------------ // Compare[详细]
-
golang中io/ioutil包用法
所属栏目:[大数据] 日期:2020-12-16 热度:65
本文转自Golove博客:http://www.cnblogs.com/golove/p/3278444.html ,并在此基础上进行添加修改. io/ioutil 包中的函数和方法 // ioutil.go ------------------------------------------------------------ // ReadAll 读取 r 中的所有数据 // 返回读取的[详细]
-
golang 中unicode包用法
所属栏目:[大数据] 日期:2020-12-16 热度:131
本文转自Golove博客:http://www.cnblogs.com/golove/p/3273585.html unicode 包中的函数和方法 // latters.go const ( MaxRune = 'U0010FFFF' // Unicode 码点最大值 ReplacementChar = 'uFFFD' // 代表无效的 Unicode 码点 MaxASCII = 'u007F' // ASCII[详细]
-
golang 中io包用法(一)
所属栏目:[大数据] 日期:2020-12-16 热度:100
本文转自Golove博客:http://www.cnblogs.com/golove/p/3276678.html ,并在此基础上进行修改. io 包为I/O原语提供了基础的接口.它主要包装了这些原语的已有实现,如 os 包中的那些,抽象成函数性的共享公共接口,加上一些其它相关的原语。 由于这些接口和[详细]
-
golang中strings包用法
所属栏目:[大数据] 日期:2020-12-16 热度:187
本文转自Golove博客:http://www.cnblogs.com/golove/p/3236300.html strings 包中的函数和方法 // strings.go ------------------------------------------------------------ // Count 计算字符串 sep 在 s 中的非重叠个数 // 如果 sep 为空字符串,则返回[详细]
-
Golang学习 - 学习资源列表
所属栏目:[大数据] 日期:2020-12-16 热度:58
本文转自Golove博客:http://www.cnblogs.com/golove/p/3274321.html Golang 学习资源: 《学习 Go 语言》 - 书籍 http://www.mikespook.com/learning-go/ 《Go 入门指南》 - 书籍 https://github.com/Unknwon/the-way-to-go_ZH_CN 《Go Web 编程》 - 书籍 h[详细]
-
回复:《golang VS php 性能对比》
所属栏目:[大数据] 日期:2020-12-16 热度:86
连接:http://www.oschina.net/question/29420_138135 看到有一篇博文介绍Golang与PHP性能对比,在此回复一下。 这测试结果明显是误导人的。 1,PHP未开启OpCache,那么每次都要读磁盘文件。并且编译PHP为OpCode。性能自然会差,开启OpCache试试吧。 2、php+[详细]
-
Golang写得电子书下载工具EbookDownloadTools
所属栏目:[大数据] 日期:2020-12-16 热度:75
电子书下载工具EbookDownloadTools 子乌书简是我看电子书内容的主要来源;书简里面的书由子午手动校对所以质量都比较可靠; 去年子乌书简关闭之前我写过一个Python脚本吧所有的书籍下载回来;今年子乌书简重开之后Python不能用 所以就用GOlang重新写了一个程[详细]
