Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。1 map簡介 map是一堆索引值對的未排序集合,類似Python中字典的概念,它的格式為map[keyType]valueType,是一個key-value的hash結構。map的讀取和設定也類似slice一樣,通過key來操作,只是slice的index只能是int類型,而map多了很多類型,可以是int,可以是string及所有完全定義了==與!=操作的類型。
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。指標GO的指標用法與C語言中指標用法類似,&用於取址, *用於取值。唯一區別:沒有指標運算 結構體例:type struct_example struct { a int b int}結構體欄位的訪問與C語言相同,用點號來訪問。當用結構體指標來訪問欄位時,也使用點號來訪問。 數組定義方法: var a[666]
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。在go語言中,只要一個類型實現了一個介面含有的方法,我們就可認為該類型實現了該介面,下面是go語言中一個簡單的類型和介面的例子。package mainimport ( "fmt")//定義一個介面,實現run方法type IRun interface { run()}//定義一個大人的類型type man struct {}//定義一個小孩類型type kid struct
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 (轉自go技術晨讀) go語言的channel有一個看上去很奇怪的特性,就是如果向一個為空白值(nil)的channel寫入或者讀取資料,當前goroutine將永遠阻塞。 以上四個main函數都會永遠阻塞(但是因為沒有其他goroutine,所以runtime會報告一個deadlock錯誤) 為什麼go team 要這麼設計呢?
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。import "fmt"type Rank int const ( Rank001 Rank = iota Rank002 Rank003 Rank004)var rewards = [...]string{ "獎勵1","獎勵2","獎勵3","獎勵4",}
Time of Update: 2015-06-17
這是一個建立於
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。有些函數執行前後,需要加日誌、記錄耗時、還要處理panic,都是些重複性的東西。 所以弄了個模板式的東西,碰到這類需求,直接把相關函數和參數,丟到run函數去就不用管了,省得浪費時間。先上個調用例子://函數執行模板//author: Xiong Chuan Liang//date: 2015-3-19package mainimport
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。1、下載Zeromq stable release4.0.5源碼:http://zeromq.org/intro:get-the-software2、編譯原始碼:我用的是VS2012,將msvc10.sln工程匯入,如所示注意:此處的編譯選項記住為 Release 和 win32。如果選擇為 Debug 模式,則產生的 lib 和 dll
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。本文為理解翻譯,原文地址:http://www.goinggo.net/2015/01/stack-traces-in-go.html Introduction在Go語言中有一些調試技巧能協助我們快速找到問題,有時候你想儘可能多的記錄異常但仍覺得不夠,搞清楚堆棧的意義有助於定位Bug或者記錄更完整的資訊。 本文將討論堆疊追蹤資訊以及如何在堆棧中識別函數所傳遞的參數。Functions先從這段代碼開始: Listing 1 0
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 Redis和NSQ都有完善的訂閱和發布實現,但參考它們的源碼實現,做個實際例子,對兩邊的異同和這種機制會更有印象。練習省掉複雜的,就實現簡單的 訂閱/取消訂閱/發布資訊 功能,足夠了。Server.go
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。幫朋友忙去採集的,看他開啟韓國網站 一個一個點開去儲存看不下去了速度太慢了,原本想用PHP寫的,剛好看了無聞大大的go採集,然後無恥的改了下就用了,package mainimport
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。先上代碼package mainimport ( "fmt" "net/http")func main() { resp, err := http.Get("http://mirrors.ustc.edu.cn/opensuse/distribution/12.3/iso/openSUSE-12.3-GNOME-Live-i686.iso") if err !
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。想將mysql 的TCP 封死,所有外部連結由我的proxy來控制,so 寫了一個 tcp 轉 unix socket 的 proxy。package mainimport ("os""fmt""net""io""sync""time")type proxy struct{Host stringPort stringLocal
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 程式可用來定時執行一些任務,並通過訊號量處理,在被強制中斷時,也能做相應警告及清理處理. package main//訊號量與定時器//author: Xiong Chuan Liang//date: 2015-2-25import "fmt"import "os"import "os/signal"import "time"func main()
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 Although PhantomJS version 1.9 does have WebSocket support, that support is limited to the hixie-76 draft of the protocol. PhantomJS 2.0 is scheduled to include the more modern RFC 6455 version of WebSockets.
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。import "os"func main() { for i:=0; i<20; i++ { go func() { for { b:=make([]byte, 10) os.Stdin.Read(b) // will block } }() } select{
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。01package main02 03import (04 "encoding/base64"05 "fmt"06)07 08const (09 base64Table ="123QRSTUabcdVWXYZHijKLAWDCABDstEFGuvwxyzGHIJklmnopqr234560178912"10)11 12var coder =
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。package mainimport ("fmt". "strconv")type Element interface{}type List []Elementtype Person struct {name stringage int}func (P Person) String() string {return "My name is " + P.name + "
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。初步瞭解:http://rongmayisheng.com/post/golanggo的安裝和文檔視頻材料簡單易行:http://toeo.iteye.com/blog/1360075goclipse下載地址和方法:https://github.com/GoClipse/goclipse/blob/latest/documentation/Installation.md#installationNote for users in
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。package controllersimport ( . "logger" "web")//對象繼承直接擁用REST標準介面type login struct { web.ControllerBase}func (this *login) Get() { this.Template["key"] = "value"