1.下载并导入数据库驱动包官方不提供实现,先下载第三方的实现,点击这里查看各种各样的实现版本。这里选择了Go-MySQL-Driver这个实现。地址是:https://github.com/go-sql-driver/mysql/。然后按照里面的说明下载驱动包:$ go get github.com...
分类:
数据库 时间:
2015-05-07 00:45:34
阅读次数:
3006
Go语言默认的sync.RWMutex实现在多核环境中表现并不佳,因为所有的读者在进行原子增量操作时,会抢占相同的内存地址。该文探讨了一种n-way
RWMutex,也可以称为“大读者(big reader)”锁,它可以为每个CPU内核分配独立的RWMutex。读者仅需在其核心中处理读锁,而写者则须依次处理所有锁。
查找当前CPU
读者使用CPUID指令来决定使用何种锁,...
分类:
编程语言 时间:
2015-05-06 19:49:31
阅读次数:
264
摘要: 本文主要解说go语言的文件操作.系统底层的open\write等系统调用,往往操作的文件对象是文件描写叙述符;而C语言库的文件操作须要借助fopen/fread等函数,它们的操作对象是文件指针.go语言中,对文件操作进行了进一步封装……1.os包中File类首先,file类是...
分类:
编程语言 时间:
2015-05-06 13:11:55
阅读次数:
145
Go语言的tcl/tk gui库之BWidget包 note:这是一篇关于BWidget包的部件,不是tcl/tk的标准部件? Lable 部件 package require BWidget pack [Label .l -text Lable -helptext 这是一个Label] Entry 部件 package ...
分类:
其他好文 时间:
2015-05-02 20:50:21
阅读次数:
236
package main import "github.com/nsf/gothic" const init_script = ` catch { destroy .clock errorswindow } set w [ toplevel .clock ] wm ?withdraw ?. wm ?title ?$::w ?"clock" tk ?appname ?"cloc...
分类:
编程语言 时间:
2015-05-02 09:59:36
阅读次数:
209
写在前面:
近来关于对Golang的讨论有很多,七牛的几个大牛们也断定Go语言在未来将会快速发展,并且很可能会取代Java成为互联网时代最受欢迎的编程语言。Go语言是google推出的编程语言,在已经成功的给世人创造了改变人们生活的操作系统之后,google似乎感觉有必要再为世人带来一款强大的编程语言,而Go语言依靠自己众多友好的特性也不负众望正在被开发者接触,我有幸在学习高性能并发编程的时候认识...
分类:
编程语言 时间:
2015-05-01 23:54:37
阅读次数:
364
GO没有原生的界面库,所以不能直接用来写GUI界面。但最近互联网上已经涌现出不少成熟、好用的第三方界面库。使用它们,就同样可以写出同C#、C++的界面。而且效率还更胜一筹。 关于Walk界面库(官方介绍): Walk是一个写给Golang的Window应用程序库套件,它主要用于桌面GUI的开发,但....
分类:
编程语言 时间:
2015-05-01 14:43:11
阅读次数:
234
理解goroutine是如何在channel的基础上通信...
分类:
其他好文 时间:
2015-04-30 18:20:32
阅读次数:
202
个人觉得golang十分适合进行网游服务器端开发,写下这篇文章总结一下。
从网游的角度看:
要成功的运营一款网游,很大程度上依赖于玩家自发形成的社区。只有玩家自发形成一个稳定的生态系统,游戏才能持续下去,避免鬼城的出现。而这就需要多次大量导入用户,在同时在线用户量达到某个临界点的时候,才有可能完成。因此,多人同时在线十分有必要。
再来看网游的常见玩法,除了排行榜这类统计和数据汇总的功能外,基本没有...
分类:
编程语言 时间:
2015-04-29 17:12:12
阅读次数:
133
Table of Contents1. 通过Channel传递退出信号2. 使用waitgroupgoroutine和channel是Go语言非常棒的特色,它们提供了一种非常轻便易用的并发能力。但是当您的应用进程中有很多goroutine的时候,如何在主流程中等待所有的goroutine 退出呢?1...
分类:
其他好文 时间:
2015-04-28 01:45:14
阅读次数:
153