原创 go channel源碼

今天在【Go夜讀#Channel】的視頻,感覺這個視頻很長,兩個小時,然後比較模糊,聽不明白,可能是自己讀源碼的基礎不夠吧。不過前面的可視化版本還是不錯的 把hchan的屬性可視化到下面這種,看起來就很好理解 後面讀源碼的第二部分就看得

原创 go的信號量semaphore

今天學習了go的信號量semaphore,因爲之前學習過操作系統的pv操作,所以看這個東西,沒有什麼很難的地方 簡單的記錄一些學習筆記: 1、TryAcquire 和 Acquire 分別是不等待和等待 2、一開始看視頻,以爲collat

原创 go1.13特性 errors改動 Is()函數

看了go的doc,對包裝wrap不是很理解,看了一上午,原來不是設計模式的那種包裝模式,而是fmt.Errorf的包裝 打了一小段理解的代碼如下: package main import ( "errors" "fmt" ) t

原创 mongo-go沒有找到數據的返回

今天偶然間發現,使用go的第三方包調用mongo 1、如果是One()找一條記錄的話,如果找不到,回返回ErrNotFound這個錯誤 2、但是如果是All()的話,找很多條記錄,就算找不到,也不會返回任何錯誤 驗證代碼如下: pack

原创 用keras解決迴歸問題【人工音頻第一篇文章】

keras解決迴歸問題目錄一、簡介二、代碼 一、簡介 這一篇博客是AI音頻的第一篇,想寫一下怎麼用keras去解決迴歸問題。首先,keras是一個在tensorflow上面封裝的高級的API包,用起來十分的方便。keras的API

原创 gorm不同數據庫跑事務

func (d *MySqlDao)Tran(v int){ t:=d.db.Begin() s:=t.Exec("insert into sharing.collections values(?,?);",v,v) s.E

原创 golang err錯誤碼的細分

package main import ( "fmt" ) type UpdateNotingErr struct { error Code int } func main(){ e:=returnErr() v:=e.

原创 圖最小路程

package main import ( "fmt" ) func main(){ var n int fmt.Scan(&n) var arr [][]int //二維數組初始化 for i := 0; i < n+

原创 go的標準輸入輸出

好久沒有刷算法題了,感覺自己的算法能力都退步了 最近想用go刷一些算法題,首先要學的就是go怎麼與標準輸入輸出啦 package main import "fmt" func main(){ var a int var b st

原创 go的sync.Map

今天在寫代碼的時候,發現了一個bug,查到最後居然是go的sync.Map的key是有判斷類型的 下面的a是uint32類型,然後硬編碼的1是int類型,因爲類型不一樣,所以輸出的值是nil 記錄一下  

原创 Apns讀書筆記一(overview)

https://developer.apple.com/library/archive/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/APNSOverv

原创 go http server graceful exit

今天做了一個go語音的http server優雅退出的測試實驗 package main import ( "context" "fmt" "log" "net/http" "os" "os/signal" "sysca

原创 geohash算法的學習筆記

最近公司項目在探究怎麼找到附近的用戶這個功能 說到了redis裏面新增了空間索引,能夠不計算在某個範圍內最近的點這種問題 底層是用geohash算法實現的,所以就順着去學習了下geohash算法的原理 總而言之,geohash是一種把距離

原创 go stack trace 學習筆記

今年學習了一下 go stack,就是怎麼看go panic 之後打印的堆棧信息 學習的網址:https://www.ardanlabs.com/blog/2015/01/stack-traces-in-go.html 歸納總結幾點我覺得

原创 python的global變量一種用法

在用itchat的時候,全局變量引用不到,需要用global關鍵字指明變量是全局的 name = "outter" def hello(): # global name name = "inner" prin