為什么使用golang編譯器編譯golang速度這么快?可能很多人對此沒有深入了解過,故而小編總結(jié)了這篇文章,通過這文章的講解,希望你能夠收獲更多知識。
讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:主機(jī)域名、虛擬空間、營銷軟件、網(wǎng)站建設(shè)、開平網(wǎng)站維護(hù)、網(wǎng)站推廣。想把某個(gè)用go寫的工具放到家里路由(R6300v2)上跑,需要自己build一份host x64, target arm的go交叉編譯器,花幾分鐘看了一下官方文檔,結(jié)果就這么簡單:
$ git clone .../go && cd go && git checkout go1.4.2 $ cd src $ GOOS=linux GOARCH=arm GOARM=5 ./make.bash
按我以前交叉編譯gcc toolchain的經(jīng)驗(yàn),編譯怎么也得要個(gè)幾分鐘到十幾分鐘不等。結(jié)果在我的E3 1230v3 + 256G Plextor M6S上,編譯go(包括庫)只花了不到20秒,也許不到10秒。比git clone還快。
Go編譯器支持九個(gè)指令集。不同體系結(jié)構(gòu)的編譯器質(zhì)量存在重要差異。
amd64(也稱為x86-64) 成熟的實(shí)現(xiàn)。 386(x86或x86-32) 與amd64端口相當(dāng)。 arm(ARM) 支持Linux,F(xiàn)reeBSD,NetBSD,OpenBSD和Darwin二進(jìn)制文件。沒有其他端口廣泛使用。 arm64(AArch74) 支持Linux和Darwin二進(jìn)制文件。1.5中的新功能,沒有其他端口那么好用。 ppc64, ppc64le (64位PowerPC大端和小端) 支持Linux二進(jìn)制文件。1.5中的新功能,沒有其他端口那么好用。 mips, mipsle (32位MIPS大端和小端) 支持Linux二進(jìn)制文件。1.8中的新功能,沒有其他端口那么好用。 mips64, mips64le (64位MIPS大端和小端) 支持Linux二進(jìn)制文件。1.6中的新功能,沒有其他端口那么好用。 s390x (IBM System z) 支持Linux二進(jìn)制文件。1.7中的新功能,沒有其他端口那么好用。 wasm (WebAssembly) 定位到WebAssembly平臺。1.11中的新功能,沒有其他端口那么好用。
除了底層操作系統(tǒng)接口代碼之類的內(nèi)容外,所有端口的運(yùn)行時(shí)支持都是相同的,包括標(biāo)記清除垃圾收集器,有效的數(shù)組和字符串切片以及對有效的goroutine(例如堆棧)的支持。按需增長和收縮。
編譯器可以針對DragonFly BSD,F(xiàn)reeBSD,Linux,NetBSD,OpenBSD,macOS(Darwin),Plan 9,Solaris和Windows操作系統(tǒng)。
以下附加約束適用于只能從源構(gòu)建的系統(tǒng):
對于64位PowerPC上的Linux,支持的最低內(nèi)核版本是2.6.37,這意味著Go在這些系統(tǒng)上不支持CentOS 6。
以上就是使用golang編譯器編譯golang速度這么快的原因,看完之后是否有所收獲呢?如果想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊,感謝各位的閱讀。
網(wǎng)頁名稱:為什么使用golang編譯器編譯golang速度這么快-創(chuàng)新互聯(lián)
網(wǎng)址分享:http://jinyejixie.com/article24/ddeije.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、全網(wǎng)營銷推廣、網(wǎng)站維護(hù)、關(guān)鍵詞優(yōu)化、自適應(yīng)網(wǎng)站、靜態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)