自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 资源 (3)
  • 收藏
  • 关注

原创 GO 语言websocket编程

GO提供原生的websocket API,使用时go get然后引用即可 golang.org/x/net/websocket 使用起来也很方便,直接上代码吧。一个echo server的代码package mainimport( "golang.org/x/net/websocket" "fmt" "net/http" "flag")type WSServer

2017-12-19 18:18:52 8422 2

原创 GO通道chan

chan用于goroutine间的通信1、基础有缓冲通道和无缓冲通道无缓冲通道:make(chan int) 有缓冲通道:make(chan int, 5)无缓冲通道会导致发送和接收的goroutine同步化主要体现在如下两点: - 无缓冲通道会使发送goroutine阻塞,直到对应的chan上有接收者package mainimport (

2017-12-12 20:31:41 946

原创 不要通过共享内存来通信,要通过通信来共享内存

“不要通过共享内存来通信,要通过通信来共享内存”,这句话是GO社区中非常经典的一句话,但是我们如何理解这句话呢? GO语言的协程(goroutine)是从进程、线程基础上发展而来的,它比进程线程更轻量级,但是都是为并发而生。既然是并发,那么不可避免的会有多个不同并发实体之间传播或者交换信息,也即通信。要理解“不要通过共享内存来通信,要通过通信来共享内存”这句话,我们得从跟进程线程间通信的比较来了解

2017-12-12 19:29:43 5624 2

原创 命令行解析:flag

一般使用在写命令行程序(工具、server)时,对命令参数进行解析是常见的需求。Go的命令行参数解析通过flag包实现,先看下面这个例子,假设我们实现了一个server,启动这个server的时候需要指定监听的tcp地址(例如:127.0.0.1:1314)、配置文件、监听的http地址(例如:127.0.0.1:6666)。启动命令如下: ./server -tcpAddr 127.0.0.1

2017-12-12 19:27:01 1931

原创 切片(slice)

切片是动态数组,比数组灵活。数组长度不可变,但是切片可以追加。 切片原型定义如下:struct Slice{  byte *array;  unit32 len;  unit32 cap;};它抽象为以下三个部分: 1. 指向被引用的底层数组的指针; 2. 切片中元素的个数; 3. 切片分配的存储空间。声明、定义和初始化声明一个切片:var sliceTest []int声明的切片

2017-12-12 19:24:37 974

原创 map

GO语言 map

2017-12-12 19:22:43 189

Oracle初学者笔记

Oracle初学者笔记,和适合入门参考。简单易懂。

2009-10-12

WEKA入门中文教程(doc)

WEKA入门中文教程(doc) 学习数据挖掘,WEKA是个不错的软件。

2009-10-11

WEKA源码,包括SVM、KNN等源代码

数据挖掘软件中WEKA算法源码,慢慢看吧

2009-10-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除