Time of Update: 2015-06-18
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。最近做項目的時候一直很苦惱,go的單元測試是怎麼回事,之前有看過go test xx_test.go命令進行單元測試,只知道有這麼一說。最近項目中寫了很多工具類,一直想測試一下效能和執行結果。發現完全不對。這是代碼。發現多次執行go test
Time of Update: 2015-06-18
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。【Go Web基礎】01部落格項目設計 |Go視頻教程|Go語言基礎 http://www.tudou.com/programs/view/gXZb9tGNsGU/【Go Web基礎】02初窺 Web 開發 |Go視頻教程|Go語言基礎教程 http://www.tudou.com/programs/view/sqZoUrqNJno/【Go Web基礎】03模板用法講解 |Go視頻教程|Go語言基礎教程
Time of Update: 2015-06-18
這是一個建立於
Time of Update: 2015-06-18
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Go語言中一個完整的函數定義形式如下:func (t type) funcname(a int)(b,c int){ return 1,2}1.func是定義函數的關鍵字2.(t type):這一部分叫做receiver部分,它表示該函數用於特定的類型3.funcname:函數的名字4.(a int):函數接受的參數5.(b,c int):函數的傳回值,GO語言的函數是可以同時返回多個值的6.{ return
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。英文原文在此www.nada.kth.se/~snilsson/go_for_java_programmers譯文同步至http://blog.csdn.net/kkkloveyou/article/details/8308534http://bbs.gocn.im/thread-73-1-1.html====================接上文,以下本文========================.
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。上一篇文章提到了普通的channel用來進行線程的同步。Go語言裡面還有一種緩衝式的channel。ch := make(chan int, 100)需要執行類型和緩衝區的大小。package mainimport "fmt"func main() {c := make(chan int, 2) //建立int類型大小為2的緩衝區c <- 1 //緩衝區1賦值為1c <-
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。在寫gobyexample的時候遇到一個問題如下https://gobyexample.com/worker-poolspackage main 2 import( 3 "fmt" 4 "time" 5 ) 6 type Message struct { 7 id int 8 data string 9 } 10 func main(){ 11
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。《Go語言編程》一書介紹了libtask庫,可以認為這個庫等同於go的底層goroutine實現。libtask庫的channel的資料結構如下:struct Alt{ Channel *c; void *v; unsigned int op; Task *task; Alt *xalt;}; struct Altarray{ Alt **a; unsigned int n;
Time of Update: 2015-06-17
這是一個建立於
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。原創文章,轉載請註明出處:伺服器非業餘研究http://blog.csdn.net/erlib 作者Sunface估計很多同學看到這裡都會覺得迷惑,go的大名已經如雷貫耳了,但是erlang?這個東東是神馬?難道是程式設計語言?怎麼從來沒聽說過。這裡請允許我先介紹一下使用Erlang開發的比較有名的應用:一:whatsapp
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Go 語言支援複合類型: 數組:array 切片:slice 指標:pointer 字典:map 通道:chan 結構體:struct 介面:interface1. array 同一類型資料的集合 var arr [n]type //聲明type類型一維數組 var arr [m][n]type //聲明type類型二維數組 多維陣列以此類推 也可以用 := 聲明 arr :=
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Email : hahayacoder@gmail.com Go語言中有一種好用的資料類型叫map(映射),相當於C++中的雜湊表,map用起來很簡單,很C++中的使用大同小異,下面就通過實際的代碼來示範Go語言中map的使用package mainimport "fmt"func main() {//map雜湊表//使用map建立一個空的map string是鍵 int是指m :=
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Dave Cheney 寫了一篇文章 Five things that make Go fast 從 values, inline function, Escape analysis,Groutine,Segment And Copyings Stack四個方面介紹了go中的go高效能的一些知識.首先需要知道幾個概念inline function 內嵌函式 本文會帶一些相關講解具體詳情還請Google變數Go: var
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。 前面有提到go的mysql操作,但使用其進行資料庫的操作封裝,顯然在實際的開發迭代中有幾大問題存在,首先,sql操作及語句囉嗦而且複雜,其次工作效率也不是很高;如果使用此方法進行資料庫開發,勢必照成過多的代碼冗餘,且使用過程中容易產生各種問題。所以,今天我們一起來看看怎麼使用beego下orm架構來輔佐我們進行mysql資料庫操作。
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。// xuhh_go_map project /*1.map的特點: a.map是go語言的內建參考型別,所以多個map指向同一個底層的情況下,一個值發生變化,全部發生變化 b.map是無序的,每次迭代的順序都是不確定的。 c.map只有 len 沒有 cap。 d.map不是安全執行緒的,在多個go-routine中使用的時候,要加鎖。 e.map[key]value key
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。import我們在寫Go代碼的時候經常用到import這個命令用來匯入包檔案,而我們經常看到的方式參考如下:import( "fmt")然後我們代碼裡面可以通過如下的方式調用fmt.Println("hello
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。用go寫了一個web程式,測了一把效能,發現結果如下:並發數 回應時間(每100000個請求)10 16.489387100 20.436091000 51.357626 而php的同樣程式,在fastcgi方式下,測試結果如下:並發數 回應時間(每100000個請求)10 62.194685 100 81.1035871000
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。Go語言支援 字元、字串、布爾型和數字類型變數的常量。package mainimport "fmt"import "math"//使用關鍵詞const聲明一個常量const s string = "constant"func main() { fmt.Println(s) // 任意一個var聲明可以出現地方都可以使用const聲明 const n = 5
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。struct類型1. 概述 與C語言struct一樣,與java/php等class類似,在Go中,用於擴充類型,物件導向編程(本部分暫未做詳細介紹)等 聲明格式:(是類型的組合) type typeName struct { //... }2. 聲明及初始化 方法有幾種: var varName typeName //① varName := new(typeName)
Time of Update: 2015-06-17
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。學習一門語言,總是先來一個HelloWorld,正如學習每一門樂器之初,先來一首媽媽的吻。Go語言是通過Package來組織的,它自身只有25個關鍵字(比起其它的語言精簡了好多吧),這些分別是:break default func interface select case defer go map struct chan else goto package switch const fallthrough if range