將下載的zip包解壓,然后執(zhí)行 File - open 操作打開(kāi)該項(xiàng)目

公司主營(yíng)業(yè)務(wù):成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來(lái)驚喜。創(chuàng)新互聯(lián)推出紅河哈尼免費(fèi)做網(wǎng)站回饋大家。
打開(kāi)該項(xiàng)目后,進(jìn)行 SDK 和 模塊配置
執(zhí)行操作 File - Project Structure 打開(kāi)項(xiàng)目結(jié)構(gòu)配置窗口
如下圖配置,SDKs 中設(shè)置 JDK、 IDEA 這兩個(gè)的路徑(圖上的 Go sdk 你先別管他,你現(xiàn)在還操作不了的)
IDEA 的sdk 其實(shí)就是軟件安裝目錄
然后是模塊設(shè)置 Modules
設(shè)置當(dāng)前模塊的SDK依賴,如果不設(shè)置這里,則編譯時(shí)會(huì)出現(xiàn)下面的錯(cuò)誤:
我在這里莫名其妙了好半天才找到原因
然后選擇 ro.redeul.google.go 包進(jìn)行編譯,如圖:
這里如果沒(méi)有出現(xiàn) error 則編譯成功。
3. 生成插件 jar 安裝包
選擇 Build - Prepare Plugin module ... For Deployment 將會(huì)生成一個(gè)google-go-language.jar 的文件在項(xiàng)目根目錄下
4. 安裝插件:
選擇 File-settings - Plugins - install plugins from disk 在右下角
選擇剛剛生成的 jar 文件將自動(dòng)安裝插件,然后重啟軟件就好了
5. 下載安裝 go sdk
選擇你對(duì)應(yīng)的系統(tǒng)版本安裝吧,
然后一些系統(tǒng)環(huán)境變量配置,
參考:
新建 變量名:GOBIN 變量值 :C:\Go\bin
新建 變量名:GOARCH 變量值:386
如果是64位系統(tǒng) 變量值為amd64
新建 變量名:GOOS 變量值:windows
新建 變量名: GOROOT 變量值:C:\Go
新建 變量名: GOPATH 變量值:C:\my\go\project
\my\go\project 是你的項(xiàng)目目錄
編輯 Path 在Path的變量值的最后加上 ;C:\Go\bin
之后你新建項(xiàng)目就可以看到 go 的圖標(biāo)啦
新建好項(xiàng)目 hello world 一下吧 o(∩_∩)o 哈哈 ,可以開(kāi)始開(kāi)發(fā)你牛逼的 GO 項(xiàng)目了
好了先就這樣吧
插件名字是goclipse,而不是gclipse。
打開(kāi)eclipse的Help"-"Install New Software ,點(diǎn)擊"Add"按鈕
在框中的"Name"中輸入"Goclipse"(不包括引號(hào)),
在框中的"Location"中輸入github相應(yīng)的地址,點(diǎn)擊OK,下面會(huì)自動(dòng)pending出插件,一路next就可以了。
作為一個(gè)測(cè)試,作為一個(gè)測(cè)試開(kāi)發(fā), 全棧化+管理 是我們未來(lái)的發(fā)展方向。已經(jīng)掌握了Java、Python、HTML的你,是不是也想了解下最近異常火爆的Go語(yǔ)言呢?來(lái)吧,讓我們一起了解下。
Go 是一個(gè)開(kāi)源的編程語(yǔ)言 ,它能讓構(gòu)造簡(jiǎn)單、可靠且高效的軟件變得容易。
Go是從2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持開(kāi)發(fā),后來(lái)還加入了Ian Lance Taylor, Russ Cox等人,并最終于2009年11月開(kāi)源,在2012年早些時(shí)候發(fā)布了Go 1穩(wěn)定版本。現(xiàn)在Go的開(kāi)發(fā)已經(jīng)是完全開(kāi)放的,并且擁有一個(gè)活躍的社區(qū)。這三個(gè)人都是計(jì)算機(jī)界的大神,有的參與了C語(yǔ)言的編寫(xiě),有的還是數(shù)學(xué)大神,有的還獲得了計(jì)算機(jī)最高榮譽(yù)-圖靈獎(jiǎng)。
接下來(lái)說(shuō)說(shuō) Go語(yǔ)言的特色 :
簡(jiǎn)潔、快速、安全
并行、有趣、開(kāi)源
內(nèi)存管理、數(shù)組安全、編譯迅速
Go語(yǔ)言的用途 :
Go 語(yǔ)言被設(shè)計(jì)成一門(mén)應(yīng)用于搭載 Web 服務(wù)器,存儲(chǔ)集群或類(lèi)似用途的巨型中央服務(wù)器的系統(tǒng)編程語(yǔ)言。
對(duì)于高性能分布式系統(tǒng)領(lǐng)域而言,Go 語(yǔ)言無(wú)疑比大多數(shù)其它語(yǔ)言有著更高的開(kāi)發(fā)效率。它提供了海量并行的支持,這對(duì)于 游戲 服務(wù)端的開(kāi)發(fā)而言是再好不過(guò)了。
Go語(yǔ)言的環(huán)境安裝:
建議直接打開(kāi) 官方地址因?yàn)閴Φ脑虼虿婚_(kāi)
因?yàn)槲矣玫氖莣indows系統(tǒng),這里主要講下Windows系統(tǒng)上使用Go語(yǔ)言來(lái)編程。
Windows 下可以使用 .msi 后綴(在下載列表中可以找到該文件,如go1.17.2.windows-amd64.msi)的安裝包來(lái)安裝。
默認(rèn)情況下 .msi 文件會(huì)安裝在 c:Go 目錄下。你可以將 c:Gobin 目錄添加到 Path 環(huán)境變量中。添加后你需要重啟命令窗口才能生效。個(gè)人建議還是安裝到 Program Files文件夾中。
使用什么開(kāi)發(fā)工具來(lái)對(duì)Go語(yǔ)言進(jìn)行編寫(xiě):
個(gè)人建議用VS code, 也可以用Sublime Text來(lái)編輯。如果你之前看了我講的HTML語(yǔ)言的學(xué)習(xí),肯定已經(jīng)下載了VS code. 那么這時(shí)你需要在VS code中下載Go語(yǔ)言的擴(kuò)展插件。
這里有一個(gè)巨大的坑,就是在下載Go的插件和依賴包時(shí),會(huì)提示一些包沒(méi)有。主要是因?yàn)橄螺d的依賴包部分被墻了,只能想別的辦法去下載。
建議參考網(wǎng)頁(yè):
解決vscode中g(shù)olang插件安裝失敗方法
在學(xué)習(xí)go的過(guò)程中,使用的是vscode,但是一直提示安裝相關(guān)插件失敗,然后上網(wǎng)查方法,基本上是叫你建立golang.org目錄什么的,結(jié)果全是錯(cuò)的,而且都是抄襲,很煩。無(wú)意之中看到一位博主分享的方法,他也是飽受上述的垃圾博文困擾,然后找到了解決方法,這里向他致敬,秉著讓更多人看到正確解決方法的心,我寫(xiě)下正確的解決方法,希望對(duì)你有所幫助,也可以點(diǎn)開(kāi)原博主鏈接參考:
Go有一個(gè)全球模塊代理,設(shè)置代理再去安裝golang的插件,就可以安裝成功了。步驟有,首先Windows用戶打開(kāi)Powershell,一個(gè)藍(lán)色的界面,注意不是cmd!不知道的直接打開(kāi)window下面的搜索,然后輸入powershell,搜索出來(lái)就可以了。
$env:GO111MODULE=“on”
$env:GOPROXY=“”
go env -w GOPROXY=
go env -w GOPRIVATE=*.corp.example.com
然后我們打開(kāi)VsCode界面,下面會(huì)提示安裝插件,我們選擇Install ALL,就會(huì)安裝成功
當(dāng)你在運(yùn)行Go語(yǔ)言程序時(shí),提示所有的插件包都已經(jīng)安裝成功了時(shí),就可以正常使用了,要不然一堆報(bào)錯(cuò)會(huì)讓你非常心煩。
好了,今天先到這里,晚安、下班~
在 Golang 游戲leaf系列(一) 概述與示例 (下文簡(jiǎn)稱(chēng)系列一)中,提到過(guò)Go模塊用于創(chuàng)建能夠被 Leaf 管理的 goroutine。Go模塊是對(duì)golang中g(shù)o提供一些額外功能。Go提供回調(diào)功能,LinearContext提供順序調(diào)用功能。善用 goroutine 能夠充分利用多核資源,Leaf 提供的 Go 機(jī)制解決了原生 goroutine 存在的一些問(wèn)題:
我們來(lái)看一個(gè)例子(可以在 LeafServer 的模塊的 OnInit 方法中測(cè)試):
這里的 Go 方法接收 2 個(gè)函數(shù)作為參數(shù),第一個(gè)函數(shù)會(huì)被放置在一個(gè)新創(chuàng)建的 goroutine 中執(zhí)行,在其執(zhí)行完成之后,第二個(gè)函數(shù)會(huì)在當(dāng)前 goroutine 中被執(zhí)行。由此,我們可以看到變量 res 同一時(shí)刻總是只被一個(gè) goroutine 訪問(wèn),這就避免了同步機(jī)制的使用。Go 的設(shè)計(jì)使得 CPU 得到充分利用,避免操作阻塞當(dāng)前 goroutine,同時(shí)又無(wú)需為共享資源同步而憂心。
這里主動(dòng)調(diào)用了 d.Cb(-d.ChanCb) ,把這個(gè)回調(diào)取出來(lái)了。實(shí)際上,在skeleton.Run里會(huì)自己取這個(gè)通道
看一下源碼:
New方法,會(huì)生成指定緩沖長(zhǎng)度的ChanCb。然后調(diào)用Go方法就是先執(zhí)行第一個(gè)func,然后把第二個(gè)放到Cb里。現(xiàn)在手動(dòng)造一個(gè)例子:
這里解釋一下,d.Go根據(jù)源碼來(lái)看,實(shí)際也是調(diào)用了一個(gè)協(xié)程。然后上面兩次d.Go并不能保證先后順序。目前的輸出結(jié)果是1+2那個(gè)先執(zhí)行了,把3寫(xiě)入d.ChanCb,然后把3讀出來(lái),繼續(xù)讀時(shí),d.ChanCb里沒(méi)有東西,阻塞了。然后1+1那個(gè)協(xié)程啟動(dòng)了,最后又讀到了2。
現(xiàn)在把time.Sleep(time.Second)的注釋解開(kāi),會(huì)是啥結(jié)果呢
這里執(zhí)行到time.Sleep睡著了,上面兩個(gè)d.Go仍然是不確定順序的,但是會(huì)各自的function先執(zhí)行掉,然后陸續(xù)把cb寫(xiě)入d.ChanCb。看這次輸出,1+2先寫(xiě)進(jìn)去的。所以最后執(zhí)行d.Cb時(shí),就把3先讀出來(lái)了。然后d.ChanCb的長(zhǎng)度為1,說(shuō)明還有一個(gè),就是輸出2了。
另外,就是close時(shí)會(huì)判斷g.pendingGo
這個(gè)例子的意思很明顯,NewLinearContext這種方式,即使先調(diào)用的慢了半秒,它還是會(huì)先執(zhí)行完。
這里先是用了一個(gè)list,加入的時(shí)候用mutexLinearGo鎖了,都加到最后。然后新開(kāi)協(xié)程去處理,讀的時(shí)候從最前面開(kāi)始讀,也要用mutexLinearGo鎖。執(zhí)行的時(shí)候,也要上鎖mutexExecution,確保f()執(zhí)行完并且寫(xiě)入g.ChanCb回調(diào),這個(gè)mutexExecution鎖才會(huì)解除。現(xiàn)在可以改造一個(gè)帶回調(diào)的例子:
結(jié)果說(shuō)明,確實(shí)是2先被寫(xiě)入了d.ChanCb。
當(dāng)前文章:go語(yǔ)言的插件模塊 gom引擎擴(kuò)展插件
網(wǎng)站鏈接:http://chinadenli.net/article18/hpgggp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、自適應(yīng)網(wǎng)站、電子商務(wù)、網(wǎng)站制作、靜態(tài)網(wǎng)站、全網(wǎng)營(yíng)銷(xiāo)推廣
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)