《Go 語言程序設計》(Mark Summerfield)電子書網盤下載免費在線閱讀
創新互聯公司是專業的湘鄉網站建設公司,湘鄉接單;提供成都網站制作、成都網站建設,網頁設計,網站設計,建網站,PHP網站建設等專業做網站服務;采用PHP框架,可快速的進行湘鄉網站開發網頁制作和功能擴展;專業做搜索引擎喜愛的網站,專業的做網站團隊,希望更多企業前來合作!
資源鏈接:
鏈接:
提取碼: kh78 ?
書名:Go 語言程序設計
作者:Mark Summerfield
譯者:許式偉
豆瓣評分:6.9
出版社:人民郵電出版社
出版年份:2013-8-1
頁數:354
內容簡介:
國外最經典的Go語言著作,Go語言編程的先驅者Mark Summerfield的實踐經驗總結。
這是一本Go語言實戰指南,幫你了解Go語言,按Go語言的方式思考,以及使用Go語言來編寫高性能軟件。
作者展示了如何編寫充分利用Go語言突破性的特性和慣用法的代碼,以及Go語言在其他語言之上所做的改進,并著重強調了Go語言的關鍵創新。
注重實踐教學,每章都提供了多個經過精心設計的代碼示例。
由國內第一個核心服務完全采用Go語言實現的團隊——七牛團隊核心成員翻譯。
作者簡介:
Mark Summerfield Qtrac公司創始人,獨立的培訓講師、顧問、技術編輯,Go、Python、C++、Qt和PyQt方面的技術作家。他的著作包括Rapid GUI Programming with Python and Qt、C++ GUI Programming with Qt 4(與Jasmin Blanchette合著)、Programming in Python 3和Advanced Qt Programming等。
許式偉——七牛云存儲CEO,開源愛好者,發布過十余個C++開源項目,擁有超過15年的C/C++開發經驗。
呂桂華——七牛云存儲聯合創始人,擁有十余年的C/C++大型項目開發經驗,也曾在Java和.NET平臺上探索多年。
徐 立——七牛云存儲首席布道師,前盛大創新院高級研究員。
何李石——七牛云存儲布道師。
七牛云存儲技術團隊是國內第一個核心服務完全采用Go語言實現的團隊。
基本設計思路:
類型轉換、類型斷言、動態派發。iface,eface。
反射對象具有的方法:
編譯優化:
內部實現:
實現 Context 接口有以下幾個類型(空實現就忽略了):
互斥鎖的控制邏輯:
設計思路:
(以上為寫被讀阻塞,下面是讀被寫阻塞)
總結,讀寫鎖的設計還是非常巧妙的:
設計思路:
WaitGroup 有三個暴露的函數:
部件:
設計思路:
結構:
Once 只暴露了一個方法:
實現:
三個關鍵點:
細節:
讓多協程任務的開始執行時間可控(按順序或歸一)。(Context 是控制結束時間)
設計思路: 通過一個鎖和內置的 notifyList 隊列實現,Wait() 會生成票據,并將等待協程信息加入鏈表中,等待控制協程中發送信號通知一個(Signal())或所有(Boardcast())等待者(內部實現是通過票據通知的)來控制協程解除阻塞。
暴露四個函數:
實現細節:
部件:
包: golang.org/x/sync/errgroup
作用:開啟 func() error 函數簽名的協程,在同 Group 下協程并發執行過程并收集首次 err 錯誤。通過 Context 的傳入,還可以控制在首次 err 出現時就終止組內各協程。
設計思路:
結構:
暴露的方法:
實現細節:
注意問題:
包: "golang.org/x/sync/semaphore"
作用:排隊借資源(如錢,有借有還)的一種場景。此包相當于對底層信號量的一種暴露。
設計思路:有一定數量的資源 Weight,每一個 waiter 攜帶一個 channel 和要借的數量 n。通過隊列排隊執行借貸。
結構:
暴露方法:
細節:
部件:
細節:
包: "golang.org/x/sync/singleflight"
作用:防擊穿。瞬時的相同請求只調用一次,response 被所有相同請求共享。
設計思路:按請求的 key 分組(一個 *call 是一個組,用 map 映射存儲組),每個組只進行一次訪問,組內每個協程會獲得對應結果的一個拷貝。
結構:
邏輯:
細節:
部件:
如有錯誤,請批評指正。
這個 online judge 是我的畢業設計,采用 go 語言,結合 docker 等技術實現,主要是為了學習相關的技術,系統還有很多問題(尤其是安全方向),僅是為了學習而已。
使用的開源項目Nsq,用于各個組件相互通信。
主要是管理編譯docker容器和運行docker容器,防止退出。同時為編譯期做文件的準備。
主要負責編譯各種語言,或者進行語法檢查。
運行各種語言,每一種語言都有屬于自己的運行環境的docker容器。
分享文章:go語言做畢業設計 go語言程序設計
當前地址:http://vcdvsql.cn/article38/dopijpp.html
成都網站建設公司_創新互聯,為您提供商城網站、網站改版、網站維護、搜索引擎優化、網站營銷、服務器托管
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯