Go??import _ 下劃線使用
import _ 下劃線
在項(xiàng)目中集成了pprof的時(shí)候,我們只需要在main.go上面添加一行代碼
import _ "net/http/pprof"
然后,再啟動一個(gè)go方法去監(jiān)聽對應(yīng)的端口
http.ListenAndServe("localhost:6060", nil)
這樣項(xiàng)目里面就已經(jīng)集成了pprof的功能.而這里下劃線import的主要是執(zhí)行pprof里面的init()方法.
init的方法
pprof.go的源碼里面的init的方法如下:
func init() { http.HandleFunc("/debug/pprof/", Index) http.HandleFunc("/debug/pprof/cmdline", Cmdline) http.HandleFunc("/debug/pprof/profile", Profile) http.HandleFunc("/debug/pprof/symbol", Symbol) http.HandleFunc("/debug/pprof/trace", Trace) }
這也就是為什么只要import 就能夠?qū)崿F(xiàn)路由注冊.
作用
另外,下劃線 _ 在go語言里作為一個(gè)特殊的標(biāo)識符,它的作用還包含:
忽略變量:當(dāng)你不需要使用到一個(gè)函數(shù)返回的某個(gè)值時(shí),可以使用下劃線來忽略這個(gè)值。這通常用在函數(shù)返回多個(gè)值,但你只對其中的一部分感興趣時(shí)。
在for循環(huán)中忽略索引或值:當(dāng)你在一個(gè)循環(huán)中不需要使用到索引或值時(shí),可以使用下劃線來忽略它們。
空白標(biāo)識符在接口斷言和類型轉(zhuǎn)換:當(dāng)你對一個(gè)接口類型進(jìn)行類型斷言但不需要斷言的值時(shí),可以使用下劃線。
在多重賦值中使用:當(dāng)你在進(jìn)行多重賦值但某些變量已經(jīng)聲明過,且你不想在賦值時(shí)使用它們,可以使用下劃線。
以上就是Go import下劃線_使用的詳細(xì)內(nèi)容,更多關(guān)于Go import _下劃線的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Go處理json數(shù)據(jù)方法詳解(Marshal,UnMarshal)
這篇文章主要介紹了Go處理json數(shù)據(jù)的方法詳解,Marshal(),UnMarshal(),需要的朋友可以參考下2022-04-04Go?Web開發(fā)之Gin多服務(wù)配置及優(yōu)雅關(guān)閉平滑重啟實(shí)現(xiàn)方法
這篇文章主要為大家介紹了Go?Web開發(fā)之Gin多服務(wù)配置及優(yōu)雅關(guān)閉平滑重啟實(shí)現(xiàn)方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01Golang使用sqlite3數(shù)據(jù)庫實(shí)現(xiàn)CURD操作
這篇文章主要為大家詳細(xì)介紹了Golang使用sqlite3數(shù)據(jù)庫實(shí)現(xiàn)CURD操作的相關(guān)知識,文中的示例代碼簡潔易懂,有需要的小伙伴可以參考一下2025-03-03Go語言實(shí)現(xiàn)二維數(shù)組的2種遍歷方式以及案例詳解
這篇文章主要介紹了Go語言實(shí)現(xiàn)二維數(shù)組的2種遍歷方式以及案例詳解,圖文代碼聲情并茂,有感興趣的可以學(xué)習(xí)下2021-03-03