go 語言第三方庫parallel的並行使用

2021-08-07 20:47:55 字數 1090 閱讀 9333

下面介紹一下go語言第三方庫parallel的並行使用:

中可以檢視庫的使用用例。

parallel是乙個go語言並行程式庫, 用於不改變現有介面宣告前提下的業務聚合或者重構.

如果需要迴圈某乙個函式(onedbalarmcodeanaylse),只是引數不同(db, userinfo),則可以使用parallel,

它可以並行執行,極大提高執行速度。

setmaxprocs()函式表明parallel只能使用所有可用cpu的一半。

結果results中就是函式onedbalarmcodeanaylse返回的bson.m型別的資料,

它會把leng個bson.m資料存在bson.m型別的results中。

func

(this *publicreport)

provincealmcodealmtrendaddhour

(userinfo bson.m)

length :=

len(userinfo)

p := parallel.

newparallel()

pchild :=

make([

]*parallel.parallel, leng)

results :=

make([

][]bson.m, length)

for i :=

0; i < length; i++

p.run()

ifnil

!= err

log.

error

("results"

,len

(results)

, results)

}func

(this *publicreport)

onedbalarmcodeanaylse

(db string

, userinfo bson.m)

bson.m

func

setmaxprocs()

runtime.

gomaxprocs

(halfcpu)

}

Go第三方日誌庫logrus

目錄 六 字段 七 預設字段 八 日誌條目 九 hooks 十 格式化 十一 記錄函式名 go 從入門到放棄完整教程目錄 更有python go pytorch tensorflow 爬蟲 人工智慧教學等著你 更新 更全的 go從入門到放棄 的更新 更有python go 人工智慧教學等著你 日誌是...

Go第三方日誌庫logrus

日誌是程式中必不可少的乙個環節,由於go語言內建的日誌庫功能比較簡潔,我們在實際開發中通常會選擇使用第三方的日誌庫來進行開發。本文介紹了logrus這個日誌庫的基本使用。logrus是go golang 的結構化logger,與標準庫logger完全api相容。它有以下特點 使用logrus最簡單的...

go匯入第三方包

最好的學習方式就是實踐。我們通過匯入gin包來深入學習。首先回想一下,我們安裝goland的時候,設定了幾個比較重要的環境變數,也就是goroot和gopath。goroot比較容易理解。也就是我們go語言的安裝目錄,標準庫什麼的就放在裡面的。在linux中的話,預設安裝到 usr lib go中,...