原创 golang版本protobuf 在windows系統下安裝環境

1.下載protobuf的編譯器protoc 2.下載protobuf編譯器所需插件 訪問https://github.com/google/protobuf/releases 下載 下載解壓出protoc.exe文件放入gopa

原创 Go 關鍵字 defer 的一些坑你需要踩踩

Go 關鍵字 defer 的一些坑你需要踩踩 預覽目錄 一些結論 閉包與匿名函數 鞏固一下 參考文檔 什麼是 defer?如何理解 defer 關鍵字?Go 中使用 defer 的一些坑。 defer 意爲延遲

原创 用go的goroutine和channel實現一個簡單的“生產、消費”(帶有超時控制)小例子

直接上代碼 1、沒有超時的時候 package main import ( "fmt" "time" ) func main() { //存放生產的channel jobChan := make(c

原创 golang 垃圾回收機制

用任何帶 GC 的語言最後都要直面 GC 問題。在以前學習 C# 的時候就被迫讀了一大堆 .NET Garbage Collection 的文檔。最近也學習了一番 golang 的垃圾回收機制,在這裏記錄一下。 常見 GC 算法 趁着

原创 golang sync包的讀寫鎖RWMutex的使用

sync包的讀寫鎖RWMutex的使用(sync.RWMutex) 我們使用“讀寫”鎖的場景主要是在多線程的安全操作下,並且讀的情況多於寫的情況,也就是說既滿足多線程操作的安全性,也要確保性能不能太差,這時候,我們可以考慮使用讀寫鎖。當然

原创 服務端:極光推送之單人推送

公司業務需要,需要將符合某一條件的信息推送到他的手機上。之前沒有做過,在網上找了很多文章已經博客,感覺大部分都是一樣的(官網上down下來的?),沒有看明白。下面是個很小的代碼: package test; import cn.jigua