Time of Update: 2015-06-19
標籤: lsof(list open files) 是一個列出當前系統開啟檔案的工具。在linux環境下,任何事物都以檔案的形式存在,通過檔案不僅僅可以訪問常規資料,還可以訪問網路連接和硬體。所以
Time of Update: 2015-06-19
標籤: 通過traceroute我們可以知道資訊從你的電腦到互連網另一端的主機是走的什麼路徑。當然每次資料包由某一同樣的出發點(source)到達某一同樣的目的地(destination)走的路徑可能會不一樣,但基本上來說大部分時候所走的路由是相同的。linux系統中,我們稱之為traceroute,在MS Windows中為tracert。 traceroute通過發送小的資料包到目的裝置直到其返回,來測量其需要多長時間。一條路徑上的每個裝置traceroute要測3次。
Time of Update: 2015-06-19
標籤: Linux系統的route 命令用於顯示和操作IP路由表(show / manipulate the IP routing table)。要實現兩個不同的子網之間的通訊,需 要一台串連兩個網路的路由器,或者同時位於兩個網路的網關來實現。在Linux系統中,設定路由通常是為瞭解決以下問題:該Linux系統在一個區域網路
Time of Update: 2015-06-20
標籤: 這裡,我介紹一下O(n)迴文串處理的一種方法。Manacher演算法.原文地址:http://zhuhongcheng.wordpress.com/2009/08/02/a-simple-linear-time-algorithm-for-finding-longest-palindrome-sub-string/ 其實原文說得是比較清楚的,只是英文的,我這裡寫一份中文的吧。
Time of Update: 2015-06-18
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。package main import ( "fmt" "log" "os" "runtime" "syscall" "time") func daemon(nochdir, noclose int) int { var ret, ret2 uintptr var err syscall.
Time of Update: 2015-06-18
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。二叉尋找樹是一種滿足如下性質的二叉樹:(1) 某個節點的左子樹中的所有節點的值都比這個節點的值小(2) 某個節點的右子樹中的所有節點的值都比這個節點的值大下面有Go實現的非常詳盡的代碼,採用了Go風格的OO進行了封裝。代碼中主函數的例子的參照圖如下:這是我的二叉尋找樹的使用手冊:type BiSearchTree struct func (bst *BiSearchTree) Add(data float64)
Time of Update: 2015-06-18
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。有時候有這樣一種應用情境:需要等待多個事件到達,然後返回儘可能多的事件;如果沒有事件到達就阻塞等待。例如伺服器等待用戶端建立串連,或者等待用戶端資料等就有這種應用需求。 在go語言裡,可以利用select原語和它的非阻塞(default)分支組合實現這個功能: // 從ch擷取儘可能多的資料放到events裡,並返回實際數量;如果沒有資料就阻塞等待func wait(ch chan int, events []int) int {
Time of Update: 2015-06-22
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。gRPC是一個高效能、通用的開源RPC架構,其由Google主要面向行動裝置 App開發並基於HTTP/2協議標準而設計,基於ProtoBuf(Protocol Buffers)序列化協議開發,且支援眾多開發語言。gRPC提供了一種簡單的方法來精確地定義服務和為iOS、Android和後台支援服務自動產生可靠性很強的用戶端功能庫。用戶端充分利用進階流和連結功能,從而有助於節省頻寬、降低的TCP連結次數、節省CPU使用、和電池壽命。
Time of Update: 2015-06-18
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。image包實現了一個基本的2D映像庫,該包中包含基本的介面叫做image,這個裡麵包含color,這個將在image/color中描述,image介面的值建立方式有如下幾種:1調用NewRGBA和NewPaletted2解碼一個包含gif.jpen或者png格式的image資料的io.Reader首先介紹一些image介面type Image //image是一個從顏色模型中採取color.Color的矩形網格type
Time of Update: 2015-06-21
這是一個建立於
Time of Update: 2015-06-21
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。err = rows.Scan(&user.Id,&user.Name)if err != nil {fmt.Println(err)}fmt.Println("content:", user)查詢時出錯:sql: expected 21 destination arguments in Scan, not 2出現原因:資料庫不只兩個欄位,而你只擷取2個欄位,所以報錯解決方案1:err = rows.Scan(&user.Id,&
Time of Update: 2015-06-19
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。幾天前糾結了一個蛋疼的問題,在go裡面函數式支援可變參數的,譬如...T,go會建立一個slice,用來存放傳入的可變參數,那麼,如果建立一個slice,例如a,然後以a...這種方式傳入,go會不會還會建立一個slice,將a的資料全部拷貝一份過去?如果a很大,那麼將會造成很嚴重的效能問題,不過後來想想,可能是自己多慮了,於是查看go的文檔,發現如下東西:Passing arguments to ...
Time of Update: 2015-06-18
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。工欲善其事,必先利其器,學習之前我找了一些書籍和論壇,在此共用之!1學習論壇推薦 http://studygolang.com/
Time of Update: 2015-06-18
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。for迴圈刪除的時候要用臨時變數儲存e.Next(),刪除後再賦值給e,否則刪除後e=nil就直接退出了func TestList(t *testing.T) {l := list.New()for i := 0; i < 10; i++ {l.PushBack(i)}//fmt.Printf("%v", l.)for e := l.Front(); e != nil; e = e.Next()
Time of Update: 2015-06-18
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。標籤(空格分隔): Go Memory Profiler 效能調試 效能分析註:該文作者是 Dmitry Vyukov,原文地址 Debugging performance issues in Go programs這個是原文中的 Memory Profiler 段落記憶體分析器顯示了函數分配堆記憶體的情況。你可以以 CPU profile 相似的方式收集:使用 go test --memprofile,通過
Time of Update: 2015-06-18
這是一個建立於
Time of Update: 2015-06-18
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。package mainimport ( "fmt")func main() { f() fmt.Println("Returned normally from f.")}func f() { defer func() { if r := recover(); r != nil { fmt.Println("Recovered
Time of Update: 2015-06-18
這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。package mainimport "database/sql"import _ "github.com/Go-SQL-Driver/MySQL"import "fmt"func checkErr(err error){if err != nil{fmt.Println(err)panic(err)}}func main(){db, err :=
Time of Update: 2015-06-20
標籤: 深度拷貝 List<string[]> 到一個新的List<string[]> 中(tempList),遍曆tempList,移除原list中重複的string[],代碼如下:static void Main(string[] args) { List<string[]> list = new List<string[]>(); list.Add(new
Time of Update: 2015-06-18
標籤:linux成長之路 很真實的感想。很真實的人生 IT生涯的路很長,是否準備好?