-
golang学习笔记[3] 并发编程
所属栏目:[大数据] 日期:2020-12-16 热度:167
// one project main.gopackage mainimport ("fmt""runtime""sync")var counter int = 0func Count(lock *sync.Mutex) {//每次对counter操作前都需要加锁,每次使用完之后都要解锁。lock.Lock()counter++fmt.Println(counter)lock.Unlock()}func main() {//[详细]
-
Golang 命令行字体颜色
所属栏目:[大数据] 日期:2020-12-16 热度:156
package mainimport ( "flag" "syscall")func main() {defer func() {return }()cc := flag.Int("i",2,"Type: Int!")flag.Parse()count := int(-11)objDll := syscall.NewLazyDLL("kernel32.dll")colorHandle := objDll.NewProc("GetStdHandle")consoleHandl[详细]
-
golang中new和make区别
所属栏目:[大数据] 日期:2020-12-16 热度:187
golang 中有两个内存分配机制 :new和make,二者有明显区别. new:用来初始化一个对象,并且返回该对象的首地址.其自身是一个指针.可用于初始化任何类型 make:返回一个初始化的实例,返回的是一个实例,而不是指针,其只能用来初始化:slice,map和channel[详细]
-
Go by Example: Slices
所属栏目:[大数据] 日期:2020-12-16 热度:120
切片是Go语言的关键类型之一,它提供了比数组更加强大的队列相关接口。 package mainimport "fmt"func main() { // 和数组不同的是,切片的类型仅由它所包含的元素决定。 // 使用内置函数make可以创建一个长度不为零的切片。 // 下面创建了一个长度为3,存储[详细]
-
golang中sublime text中配置goimports
所属栏目:[大数据] 日期:2020-12-16 热度:76
原生态go对于import包无法自动添加或者删除,对于某些用户来说很不适应.在sublime text中利用gosublime+goimports很好的解决了这一问题. 1首先确认sublime text安装了Gosublime(安装方法这里不在赘述); 2下载goimports: go get code.google.com/p/go.[详细]
-
Golang小例 命令行正则
所属栏目:[大数据] 日期:2020-12-16 热度:66
package mainimport ( "bufio" "flag" "fmt" "os" "regexp")func main() { defer func() { return }() data := flag.String("data","This is a example for test!","Type: Text!") length := flag.Bool("len",false,"Type: Bool!") r := flag.Bool("r","Type[详细]
-
golang中goconfig包使用解析
所属栏目:[大数据] 日期:2020-12-16 热度:157
注意事项 本博客隶属于 goconfig - 课时 1:goconfig 使用解析 请注意配套使用。 本博文为 goconfig - Go 语言 INI 解析器的配套博客,旨在通过文字结合代码示例对该库的使用方法和案例进行讲解,便于各位同学更好地使用和深入了解。 库简介 goconfig 是一个[详细]
-
[leetcode] wordladder ii
所属栏目:[大数据] 日期:2020-12-16 热度:172
problem: https://oj.leetcode.com/problems/word-ladder-ii/ 代码:https://play.golang.org/p/qdmadQUcEC package mainimport ( "fmt")func main() { start := "hit" end := "cog" dict := []string{"hot","dot","dog","lot","log"} dict = append(dict,st[详细]
-
golang 生成随机数,时间种子改进型
所属栏目:[大数据] 日期:2020-12-16 热度:77
直接上代码: var ( randSeek = int64 ( 1 ) l sync . Mutex ) //获取指定长度的随机字符串 //@params num int 生成的随机字符串的长度 //@params str string 可选,指定随机的字符串 func GetRandomSring ( num int , str ... string ) string { s := "abcd[详细]
-
为Golang程序打上编译标记
所属栏目:[大数据] 日期:2020-12-16 热度:76
http://wendal.net/2014/04/02.html 参考文章:http://stackoverflow.com/questions/11354518/golang-application-auto-build-versioning 昨天在查询怎么生成一个小体积的golang程序的时候,无意中发现这个文章. 对于固定的代码,及固定的golang版本,下面的命令[详细]
-
十条最有用的golang 编程技术
所属栏目:[大数据] 日期:2020-12-16 热度:164
Golang 方向是以高并发为主的开发语言,并且原生channel特性,拥有协程等并发框架支持,大大降低并发编程门槛,golang 是google 模仿erlang ,而erlang是用于程控交换机的。 对比之前用C++ ACE框架的并发模型(proactor),惊喜于Golang的高效,简捷。 Golan[详细]
-
Go by Example: Maps
所属栏目:[大数据] 日期:2020-12-16 热度:59
Maps是Go语言内置的关联型数据类型(在其他语言有时候也叫做hashes或者dicts)。 package mainimport "fmt"func main() {// 创建一个空字典可以使用内置函数make: "make(map[键类型]值类型)"m := make(map[string]int)// 使用经典的"name[key]=value"来为键设[详细]
-
golang vim 编辑器
所属栏目:[大数据] 日期:2020-12-16 热度:149
golang 一般用sublime,但是如果在终端中,推荐用霸气外泄的VIM 安装方法:(感谢无闻) http://wuwen.org/article/38/setup-vim-go-dev-environment.html 效果: 650) this.width=650;" title="1.png" style="width:591px;height:369px;" alt="wKiom1SASWiTz[详细]
-
golang学习笔记[4] 网络编程
所属栏目:[大数据] 日期:2020-12-16 热度:66
golang搭建一个网站只是需要简单的几句就可以了 package mainimport ("fmt""log""net/http""strings")func sayhelloName(w http.ResponseWriter,r *http.Request) {r.ParseForm() //解析参数,默认是不会解析的fmt.Println(r)fmt.Println(r.Form) //这些信息[详细]
-
golang学习笔记[5] 整型
所属栏目:[大数据] 日期:2020-12-16 热度:151
golang的整型总类众多,但一般只是使用使用int或者uintt就好了, package mainimport ("fmt""unsafe")func main() {var i1 int8 = 1 //1 bytevar i2 int16 = 2 //2 bytevar i3 int32 = 3 // 4 bytevar i4 int64 = 4 // 8 bytevar i5 int = 5 // 32位:4 64位:[详细]
-
Go by Example: Range
所属栏目:[大数据] 日期:2020-12-16 热度:165
使用 range 可以遍历各种数据结构中的元素。让我们看看如何使用 range 遍历一些我们已经学习过的数据结构。 package mainimport "fmt"func main() { // 这里我们使用range遍历切片来求和 // 这种方法对数组也适用。 nums := []int{2,3,4} sum := 0 for _,num[详细]
-
Go by Example: Functions
所属栏目:[大数据] 日期:2020-12-16 热度:125
函数(Function)是Go的核心,我们将会通过多个不同的例子来学习函数。 package mainimport "fmt" // 这个函数输入两个int型数据,计算并返回int型的和func plus(a int,b int) int { // Go需要使用return语句显式地返回值 // 它不会自动返回函数中最后一个表达[详细]
-
Go by Example: Multiple Return Values
所属栏目:[大数据] 日期:2020-12-16 热度:108
Go语言内置支持多值返回。这个特性在Go语言中经常被用到。例如在一个函数中同时返回结果和错误信息。 package mainimport "fmt"// 函数签名中的(int,int)表示这个函数将会返回两个int数值。func vals() (int,int) { return 3,7}func main() { // 这里我们使[详细]
-
一个备份任务分发的Golang实现原型
所属栏目:[大数据] 日期:2020-12-16 热度:135
前段在玩协程时跟着libtask的作者Russ Cox转到Golang了,一堆重量级大牛们想出来的东西就是不同,思路非常特别,和常用的差别有点大, 但非常注重实用,减少了一堆的语法糖后,让人重新思考,开发语言本来应当是怎么样?如果用来做服务端开发的话,真的是很不[详细]
-
XCL-Tools中的cdir命令
所属栏目:[大数据] 日期:2020-12-16 热度:76
虽然现在UNIX还用不了Golang,但还是打算有空就用它替换手边一些用别的语言或脚本写的小东西,归整归整。因为有时会的东西太多, 老在不同语言中切换就会有点乱。在Github中开了个XCL_Tools的库,准备写一点就向里面堆一点。 先说说写好的这个cdir命令,这命[详细]
-
golang处理多个项目src的编译问题
所属栏目:[大数据] 日期:2020-12-16 热度:172
最近在折腾Golang 第一次花功夫研究静态语言,想想就有点小激动,是不是可以走向人生巅峰啦? 碰到一个梗每次编译的时候在多个项目中要来回切换GOPATH GOBIN这两个环境变量于是就写了个Makefile在src目录下执行就OK啦 exportGOPATH=$HOME/pj/go02exportPATH=$PA[详细]
-
GoLang语言:邮件群发器
所属栏目:[大数据] 日期:2020-12-16 热度:92
好久没有更新博客了,这次又带来了一段GO语言的代码(没办法,只会写代码了)。 Go语言邮件群发器 main.go //Multi-SendEmailprojectmain.gopackagemainimport("bufio""errors""fmt""io""io/ioutil""net/smtp""os""strings""time")funcSendMail(user,passwor[详细]
-
给终端来点彩色(c语言和Golang版)
所属栏目:[大数据] 日期:2020-12-16 热度:200
如果用过AIX或Linux下的nmon工具的应当会注意到,它可以把文字显示成多种颜色,并巧妙的利用颜色和字符组合出各种图形 来显示系统的运行情况。看看它官网附的这张图: 如果你看过它的源码,你会发现它用的是 Ncurses 库来实现彩色显示的。Ncurses很强大,可以[详细]
-
golang 学习资料,教科书
所属栏目:[大数据] 日期:2020-12-16 热度:139
https://coding.net/code33/golangLearn.git[详细]
-
golang 处理多个项目src编译问题 2.0
所属栏目:[大数据] 日期:2020-12-16 热度:138
golang 处理多个项目src编译问题 2.0 和之前那个版本区分开来,改了一下脚本代码,支持多个package exportGOPATH=$HOME/pj/go02exportPATH=$PATH:$GOPATH/binexportGOBIN=$GOPATH/binexportGOSRC=$GOPATH/srcall:cd$GOPATH/srcforfilein$GOPATH/src/*doiftest-[详细]
