原创 我的友情鏈接

51CTO博客開發For The Dream

原创 golang解析mongodb中的ISODate類型

在golang中可以使用time.Time數據類型來保存mongodb中的ISODate時間。gtype Model struct {     uploadDate time.Time `bson:"uploadDate"` } m := 

原创 Go程序執行順序

進入main包,執行import導入操作,例如需要導入fmt包,則進入fmt包,判斷fmt包依賴,進而導入依賴包;依賴包只會被導入一次,導入依賴包之後,就會執行包常量和變量的初始化,然後執行依賴包中的init函數;main包中的依賴包都導入

原创 nginx日誌輸出自定義header頭字段

這段時間做了一個web的項目,要求在日誌中輸出自定義的http header字段token和have-deleted的值,nginx版本爲1.1.19,以下是具體的log配置:log_format  main      '$remote_a

原创 gdb調試命令

 命令                               描述 backtrace(或bt)                查看各級函數調用及參數finish連續運行到當前函數返回爲                        

原创 如何學習一門新的編程語言

  最近突然有所感悟,特寫下此博文,歡迎大家來辯!  如何學習一門新的語言?首先,需要一本書。其實好多人在挑選書籍的時候有個習慣(或者說是毛病),就是總是想挑選一本比較權威的書(俗稱好書)。大家想過沒有,我們每人的生活環境以及學習環境都有或

原创 關於GOPATH和GOROOT的區別

最近在研究用godep來管理golang的依賴包,遇到以下問題:項目中對自己編輯的其他包有依賴,且該依賴包和main包處於同一目錄中,這樣在執行godep save的時候只能生成想github.com這樣的依賴包。經分析發現:我一般都是把自

原创 Ubuntu14.04源碼安裝qemu-kvm

apt-get install zlib1g zlib1g-dev  apt-get install glib2.0-dev

原创 Go語言中調用C語言----類型轉換篇

1. 基本類型轉換較簡單,直接用強制類型轉換就可以,如下:Go轉換成C: var i int ci := C.int(i) C轉換成Go: var i C.int goi := int(i)2. 字符串類型轉換也不是很難,有一點需要注意,

原创 爲什麼golang的for循環後的大括號必須跟在for關鍵字後面

如題,這是由於golang的編譯器導致的。Go語言不需要在語句或者聲明的末尾添加分號,除非一行上有多條語句。實際上,編譯器會主動把特定符號後的換行符轉換爲分號,所以如果for的左花括號放在了下一行的開始處則會被編譯器解析爲:for i :=

原创 最大報文段長度(MSS)

 最大報文段長度(MSS)表示TCP傳往另一端的最大數據的長度。當一個連接建立時,連接的雙方都要通告各自的MSS。我們已經見過MSS都是1024。這導致IP數據報通常是40字節長:20字節的TCP首部和20字節的IP首部。 在有些書裏,將它

原创 5.3 緩衝輸出與內存分配

  當一個程序生成輸出時,是否有必要將輸出立即展示給用戶?這個問題的答案根據不同的程序而定。   例如,假設一個程序輸出到終端,向終端前的用戶提問,要求用戶回答,那麼爲了讓用戶知道應該鍵入什麼內容,程序輸出應該立即地顯示給用戶。另一種情況是

原创 我的友情鏈接

51CTO博客開發For The Dream

原创 cgo動態鏈接庫

用golang通過調用cgo的方式實現某些功能,有兩種方式:1. 設置LD_LIBRARY_PATH2. //#cgo CFLAGS: -static 第二種爲猜測,目前還沒來得及實驗,嘿嘿!!

原创 TCP可靠性

TCP通過下列方式提供可靠性:應用數據被分割成TCP認爲最合適發送的數據塊;當TCP發出一個段後,它啓動一個定時器,等待目的端確認收到這個報文段。如果不能及時收到一個確認,將重發這個報文段;當TCP收到發自TCP連接另一端的數據,它將發送一