大享電腦圖書專業門市

大享電腦圖書專業門市實名驗證

Y1239803676粉絲數125614小時前上線

正評 100% (7425)

more

出貨速度 1~2 未出貨率 0%加入時間 2009/07/26

正評

100%

總評價 7425
出貨速度

1~2

優於全站平均

未出貨率

0%

優於全站平均

【大享】現貨9787302600855深度探索Go語言:物件模型與runtime的原理.特性及應用 (簡體)清華100

直購
促銷

$500$600

    數量
    運費活動
    • 運費抵用券7-ELEVEN 滿99元運費折抵31元

    付款方式
    • 現金付款
    • 全家取貨付款
    • 萊爾富取貨付款
    • 7-ELEVEN取貨付款

    現金付款

    • Yahoo奇摩輕鬆付現金接受付款方式:ATM轉帳 / Famiport / 輕鬆付帳戶餘額

    ATM 提供5家銀行:合作金庫、華南銀行、台灣銀行、國泰世華、中國信託,以上5家同行轉帳,免轉帳手續費。

    全家取貨付款

    Yahoo奇摩輕鬆付

    7-ELEVEN取貨付款

    Yahoo奇摩輕鬆付

    萊爾富取貨付款

    Yahoo奇摩輕鬆付
    運費
    • 7-ELEVEN取貨付款單件運費$60、消費滿$15000免運費

      • 單件運費$60
      • 滿2件,運費$60
      • 滿3件,運費$60
      • 消費滿$15000免運費
    • 全家取貨付款單件運費$60、消費滿$15000免運費

      • 單件運費$60
      • 滿2件,運費$60
      • 滿3件,運費$60
      • 消費滿$15000免運費
    • 萊爾富取貨付款單件運費$60、消費滿$15000免運費

      • 單件運費$60
      • 滿2件,運費$60
      • 滿3件,運費$60
      • 消費滿$15000免運費
    • 郵局掛號單件運費$65、消費滿$15000免運費

      • 單件運費$65
      • 滿2件,運費$65
      • 滿3件,運費$65
      • 消費滿$15000免運費
    商品狀況
    全新品
    所在地區
    台北市
    商品編號
    101383121192
    輕鬆付 價金保管新登場
    輕鬆付 價金保管新登場

    輕鬆付提供價金保管,交易更安心!

    商品資訊

    分級
    普級

    1、本賣場所售簡體書均屬合法報關進口,因我們有實體門市所以實際庫存無法與平臺同步;

    下標前請先詢問庫存,謝謝!

    2、簡體書因印刷與裝訂品質及貨運條件未臻完善,書況與台灣出版書籍落差大,封面常出現磨痕、

        凹痕等,但我們出貨前都會詳細檢查,再寄給您,如您對書籍狀況追求完美者,下標前請慎重考慮

        !!謝謝!!

    深度探索Go語言——對象模型與runtime的原理、特性及應用

    封幼林 著

    出版社: 清華大學出版社

    ISBN:9787302600855

    內容介紹

    本書主要講解了Go語言一些關鍵特性的實現原理,Nicklaus Wirth大師曾經說過:算法+數據結構=程序,語言特性的實現也不外乎就是數據結構+代碼邏輯。

    全書共分為4個部分:第一部分是基礎特性(第1章~第3章),第二部分是對象模型(第4章~第5章),第三部分是調度系統(第6章~第7章),第四部分是內存管理(第8章~第9章)。書中主要內容包括:指針、函數棧幀、調用約定、變量逃逸、Function Value、閉包、defer、panic、方法、Method Value、組合式繼承、接口、類型斷言、反射、goroutine、搶占式調度、同步、堆和棧的管理,以及GC等。

    書中包含大量的探索示例和源碼分析,在學會應用的同時還能了解實現原理。書中絕大部分代碼都是用Go語言實現,還有少部分使用匯編語言,都可以使用Go官方SDK直接編譯。探索過程循序漸進條理清晰,用到的工具也都是SDK自帶,方便讀者親自上手實踐。

    本書適合Go語言的初學者,在學習語言特性的同時了解其實現原理。更適合有一定的Go語言應用基礎,想要深入研究底層原理的技術人員。同樣適合有一些其他編程語言基礎,想要轉學Go語言的開發者。

    目錄

    第1章匯編基礎

    1.1x86通用寄存器

    1.1.132位架構

    1.1.264位架構

    1.2常用匯編指令

    1.2.1整數加減指令

    1.2.2數據傳輸指令

    1.2.3入棧和出棧指令

    1.2.4分支跳轉指令

    1.2.5過程調用指令

    1.3內存分頁機制

    1.3.1線性地址

    1.3.280386兩級頁表

    1.3.3PAE三級頁表

    1.3.4x64四級頁表

    1.3.5虛擬內存

    1.4匯編代碼風格

    1.5本章小結

    第2章指針(7min)

    2.1指針構成

    2.1.1地址

    2.1.2元素類型

    2.2相關操作

    2.2.1取地址

    2.2.2解引用

    2.2.3強制類型轉換

    2.2.4指針運算

    2.3unsafe包

    2.3.1標準庫與keyword

    2.3.2關於uintptr

    2.3.3內存對齊

    2.4本章小結

    第3章函數(44min)

    3.1棧幀

    3.1.1棧幀布局

    3.1.2尋址方式

    3.1.3又見內存對齊

    3.1.4調用約定

    3.1.5Go 1.17的變化

    3.2逃逸分析

    3.2.1什麼是逃逸分析

    3.2.2不逃逸分析

    3.2.3不逃逸判斷

    3.3Function Value

    3.3.1函數指針

    3.3.2Function Value分析

    3.3.3閉包

    3.4defer

    3.4.1最初的鏈表

    3.4.2棧上分配

    3.4.3高效的open coded defer

    3.5panic

    3.5.1gopanic()函數

    3.5.2gorecover()函數

    3.5.3嵌套的panic

    3.5.4支持open coded defer

    3.6本章小結

    第4章方法(6min)

    4.1接收者類型

    4.1.1值類型

    4.1.2指針類型

    4.1.3包裝方法

    4.2Method Value

    4.2.1基於類型

    4.2.2基於對象

    4.3組合式繼承

    4.3.1嵌入值

    4.3.2嵌入指針

    4.3.3多重繼承

    4.4本章小結

    第5章接口(27min)

    5.1空接口

    5.1.1一個更好的void*

    5.1.2類型元數據

    5.1.3逃逸與裝箱

    5.2非空接口

    5.2.1動態派發

    5.2.2具體實現

    5.2.3接收者類型

    5.2.4組合式繼承

    5.3類型斷言

    5.3.1E To 具體類型

    5.3.2E To I

    5.3.3I To 具體類型

    5.3.4I To I

    5.4反射

    5.4.1類型系統

    5.4.2類型元數據詳細講解

    5.4.3對數據的操作

    5.4.4對鏈接器裁剪的影響

    5.5本章小結

    第6章goroutine(48min)

    6.1進程、線程與協程

    6.1.1進程

    6.1.2線程

    6.1.3協程

    6.2IO多路復用

    6.2.13種網絡IO模型

    6.2.2示例對比

    6.3巧妙結合

    6.4GMP模型

    6.4.1基本概念

    6.4.2從GM到GMP

    6.5GMP主要數據結構

    6.5.1runtime.g

    6.5.2runtime.m

    6.5.3runtime.p

    6.5.4schedt

    6.6調度器初始化

    6.6.1調度器初始化過程

    6.6.2runtime.schedinit()函數

    6.7G的創建與退出

    6.7.1相關匯編函數

    6.7.2runtime.newproc()函數

    6.8調度循環

    6.8.1runtime.schedule()函數

    6.8.2runtime.findrunnable()函數

    6.9搶占式調度

    6.9.1Go 1.13的搶占式調度

    6.9.2Go 1.14的搶占式調度

    6.10timer

    6.10.1一個示例

    6.10.2數據結構

    6.10.3操作函數

    6.11netpoller

    6.11.1跨平台的netpoller

    6.11.2TCP連接的Read()方法

    6.12監控線程

    6.12.1按需執行timer和netpoll

    6.12.2搶占G和P

    6.12.3強制執行GC

    6.13本章小結

    第7章同步(32min)

    7.1Happens Before

    7.1.1併發

    7.1.2並行

    7.2內存亂序

    7.2.1編譯期亂序

    7.2.2執行期亂序

    7.2.3內存排序指令

    7.3常見的鎖

    7.3.1原子指令

    7.3.2自旋鎖

    7.3.3調度器對象

    7.3.4優化的鎖

    7.4Go語言的同步

    7.4.1runtime.mutex

    7.4.2semaphore

    7.4.3sync.Mutex

    7.4.4channel

    7.5本章小結

    第8章堆(17min)

    8.1內存分配

    8.1.1sizeclasses

    8.1.2heapArena

    8.1.3mspan

    8.1.4mcentral

    8.1.5mcache

    8.1.6mallocgc

    8.2垃圾回收

    8.2.1GC root

    8.2.2三色抽象

    8.2.3寫屏障

    8.2.4觸發方式

    8.2.5GC Worker

    8.2.6gctrace

    8.3本章小結

    第9章棧(8min)

    9.1棧分配

    9.1.1棧分配初始化

    9.1.2棧分配邏輯

    9.2棧增長

    9.2.1棧增長檢測代碼

    9.2.2棧增長函數

    9.3棧收縮

    9.4棧釋放

    9.4.1小於或等於16KB的棧空間

    9.4.2大於或等於32KB的棧空間

    9.4.3棧釋放時機

    9.5本章小結

    本日最速最優惠