Time of Update: 2018-06-07
標籤:trace 需要 ptrace 調試 proc 解決方案 sudo span 點擊 1.
Time of Update: 2018-06-05
標籤:案頭 acl 身分識別驗證 oracle 升級 targe art 管理 edit 轉至:https://jingyan.baidu.com/article/d169e18604ca864
Time of Update: 2018-06-07
package mainimport("fmt""io/ioutil""net/http")func gethtml(url string) (r *http.Response, e error){ resp,err := http.Get(url) if err != nil { fmt.Print("error") } return
Time of Update: 2018-06-07
程式經常出現OOM錯誤,然後關鍵字"go pprof"搜到文章<Go程式效能分析pprof>,該文章第二步說運行程式後會產生profile檔案,但是編譯運行後發現產生的profile檔案大小一直為0,然後關鍵字"go pprof profile is empty"搜到文章<Golang pprof heap profile is
Time of Update: 2018-06-07
電視劇《萌妃駕到》即將和觀眾見面,劇中很多皇妃的扮演者顏值演技都線上,在電視劇《萌妃駕到》中曲碗碗扮演者尤其受關注,那麼劇中曲碗碗扮演者是誰,還演過哪些電視劇? ======================================= 薇.信.關.注.工.眾.號:戲說影院 點擊影院入口→閱讀原文→輸入"片名"搜尋→即可觀看! =======================================
Time of Update: 2018-06-07
## [部落格地址:sync.Map源碼分析](https://github.com/Chasiny/Blog/blob/master/blog/go/sync.Map%E6%BA%90%E7%A0%81%E5%88%86%E6%9E%90.md)## 普通的mapgo普通的map是不支援並發的,例如簡單的寫```gofunc main() {wg := sync.WaitGroup{}wg.Add(10)m := make(map[int]int)for i := 0; i < 10;
Time of Update: 2018-06-06
在IPFS新增一個檔案建立test.txt檔案開啟終端,切換到案頭,建立一個檔案夾test,切換到test中,通過vi建立一個檔案test.txt,檔案裡面輸入Hello World儲存並且退出。$ cd Desktop/$ mkdir test$ cd test/$ vi test.txt$ cat test.txtHello World將test.txt添加到ipfs節點使用ipfs add命令添加:$ cd Desktop/test$ ipfs add test.txtadded
Time of Update: 2018-06-06
為什麼全力推薦Golang轉自:https://zhuanlan.zhihu.com/p/19959647討論哪個語言更好,就像在爭論姚明和劉翔誰是更優秀的運動員。因為各自的座標象限不同,常常會陷入一個難有結論怪圈。所以本文絕不是在說Golang是比其他語言更好的語言。Golang只是最值得推薦的語言,尤其適合快速成長中的後端研發團隊。我推薦Golang的主要理由,並不是技術性的要素:不是他的高並發能力,編譯的速度,跨平台能力,記憶體效率,也不是社區的活躍度等等。事實上,創業之後,或者說成為一個
Time of Update: 2018-06-05
Golang 學習:基礎命令本文內容整理自郝林老師的《go語言第一課》一、go run 用於運行命令源碼檔案,只能接收一個命令源碼檔案以及若干個庫源碼檔案作為參數。先將源碼檔案編譯成臨時檔案,然後再運行這個臨時檔案,臨時檔案可能包括可執行檔和歸檔檔案。這些臨時檔案如果不做命令標記,會在被運行後被刪除。 下面是go run命令常用的標記: –a : 強制編譯相關代碼檔案,無論代碼檔案是否有更新 –n : 列印編譯過程中所需要的命令,但是不執行它 –p N :
Time of Update: 2018-06-05
Mutex 是一個互斥鎖,可以建立為其他結構體的欄位;零值為解鎖狀態。Mutex 類型的鎖和線程無關,可以由不同的線程加鎖和解鎖。方法func (*Mutex) Lockfunc (m *Mutex) Lock()Lock 方法鎖住 m,如果 m 已經加鎖,則阻塞直到 m 解鎖。func (*Mutex) Unlockfunc (m *Mutex) Unlock()Unlock 方法解鎖 m,如果 m 未加鎖會導致執行階段錯誤。注意在一個 goroutine 獲得 Mutex 後,其他
Time of Update: 2018-06-08
在上一篇中,我們討論了並發,以及並發和並行的區別。在這篇教程中我們將討論在Go中如何通過Go協程實現並發。什麼是協程Go協程(Goroutine)是與其他函數或方法同時啟動並執行函數或方法。可以認為Go協程是輕量級的線程。與建立線程相比,建立Go協程的成本很小。因此在Go中同時運行上千個協程是很常見的。Go協程對比線程的優點與線程相比,Go協程的開銷非常小。Go協程的堆棧大小隻有幾kb,它可以根據應用程式的需要而增長和縮小,而線程必須指定堆棧的大小,並且堆棧的大小是固定的。Go協程被多工到較少的
Time of Update: 2018-06-07
用 Go 來瞭解一下 Redis 通訊協議原文地址:煎魚的迷之傳送門Go、PHP、Java... 都有那麼多包來支撐你使用 Redis,那你是否有想過有了服務端,有了用戶端,他們倆是怎樣通訊,又是基於什麼通訊協議做出互動的呢?介紹基於我們的目的,本文主要講解和實踐 Redis 的通訊協議Redis 的用戶端和服務端是通過 TCP 串連來進行資料互動, 伺服器預設的連接埠號碼為 6379用戶端和伺服器發送的命令或資料一律以 \r\n(CRLF)結尾(這是一條約定)協議在 Redis
Time of Update: 2018-06-07
本文最早發佈於 Rootrl's Blog緣起我們公司開發環境很特殊,一台本機伺服器,然後分配多個ssh賬戶給開發人員。平時上傳代碼只能ftp/sftp串連上傳(以前用過samba共用,但被關了。。)。所以我們平時是在Phpstorm上用sftp遠程開啟伺服器上的項目,然後設定自動上傳。這樣一般工作沒問題。但是有個坑:Phpstorm無法捕獲類似git
Time of Update: 2018-06-07
開發調試stdout log日誌即時高亮顯示高亮顯示其實就是把特定的關鍵詞搜尋出來替換為 ANSI escape code正則替換, perl -pe 's/<pattern>;/<replacement>;/g'egrep 關鍵詞替換 egrep "fatal|error|warning|info|debug" -A10 -B10 --color=autoperl 的方式可以指定不同的關鍵詞不同的顏色,egrep
Time of Update: 2018-06-07
Golang context 本文包含對context實現上的分析和使用方式,分析部分源碼講解比價多,可能會比較枯燥,讀者可以直接跳過去閱讀使用部分。 ps: 作者本著開源分享的精神撰寫本篇文章,如果出現任何誤差務必留言指正,作者會在第一時間內修正,共同維護一個好的開源生態,謝謝!!!一、簡介 作者所講的context的包名稱是: "golang.org/x/net/context" ,希望讀者不要引用錯誤了。 在godoc中對context的介紹如下: Package
Time of Update: 2018-06-07
Golang語言中,處理序間通訊除了使用channel,還可以使用共用記憶體,即sync包。Q-1package mainimport ("fmt""time")func main() {for i := 1; i < 6; i++ {go func(x int) {time.Sleep(time.Second)fmt.Println("第", x, "個子goroutine執行結束")}(i)}fmt.Println(&
Time of Update: 2018-06-07
由於GoLang Map 內部儲存是無序的,當需要按順序獲得map儲存的key -value值時,應該對遍曆出來的結果進行重新排序;在go 1.8版本後,提供的slice sort 功能使排序更簡單:package mainimport ( "fmt" "sort")func main() { m := map[string]int{ "something": 10, "yo":
Time of Update: 2018-06-07
對於普通結構體作為接收者,值和指標並沒有區別。(以下代碼摘抄自Go In Action 中文版)type defaultMatcher struct{}// 方法聲明為使用 defaultMatcher 類型的值作為接收者func (m defaultMatcher) Search(feed *Feed, searchTerm string)// 聲明一個指向 defaultMatcher 類型值的指標dm := new(defaultMatch)// 編譯器會解開 dm
Time of Update: 2018-06-07
golang學習筆記13 Golang 類型轉換整理 go語言string、int、int64、float64、complex 互相轉換#string到intint,err:=strconv.Atoi(string)#string到int64int64, err := strconv.ParseInt(string, 10, 64)#int到stringstring:=strconv.Itoa(int)#int64到stringstring:=strconv.FormatInt(int64,10
Time of Update: 2018-06-07
使用goroutine的方法很簡單,直接在語句前面加go關鍵字即可,如果是多核處理器的電腦,使用gorountine,就會在另外一個CPU上執行goroutine,子協程不一定會和主協程在一個CPU上執行。 這裡有兩個注意的地方,使用go關鍵字的進程稱之為子協程,而沒有使用go關鍵字的進程稱之為主協程,在多CPU的機器上,如果有多個協程,那麼這些協程的執行順序以及執行完成的順序都是不確定的,但有一點,如果主協程結束,那麼整個進程就結束了,不論子協程是否結束,整個進程都結束了,也就看不到子協