原文:深度解密Go語言之 pprof

toc 相信很多人都聽過 雷神 關於性能優化的故事。在一個 D 游戲引擎的源碼里,John Carmack 將 sqrt x 這個函數的執行效率優化到了極致。 一般我們使用二分法,或者牛頓迭代法計算一個浮點數的平方根。但在這個函數里,作者使用了一個 魔數 ,根本沒有迭代,兩步就直接算出了平方根。令人嘆為觀止 因為它是最底層的函數,而游戲里涉及到大量的這種運算,使得在運算資源極其緊張的 DOS 時 ...

2019-11-11 08:16 3 2577 推薦指數:

查看詳情

深度解密Go語言之 scheduler

目錄 前置知識 os scheduler 線程切換 函數調用過程分析 goroutine 是怎么工作的 什么是 go ...

Tue Sep 03 03:16:00 CST 2019 6 2776
深度解密Go語言之map

目錄 什么是 map 為什么要用 map map 的底層如何實現 map 內存模型 創建 map 哈希函數 key 定位過程 ...

Wed May 22 17:02:00 CST 2019 2 8053
深度解密Go語言之context

目錄 什么是 context 為什么有 context context 底層實現原理 整體概覽 接口 Context ...

Wed Jun 12 16:46:00 CST 2019 2 4786
深度解密Go語言之反射

目錄 什么是反射 為什么要用反射 反射是如何實現的 types 和 interface 反射的基本函數 反射的三大定律 反射 ...

Tue May 07 06:36:00 CST 2019 1 3290
深度解密Go語言之Slice

Go 語言的 slice 很好用,不過也有一些坑。slice 是 Go 語言一個很重要的數據結構。網上已經有很多文章寫過了,似乎沒必要再寫。但是每個人看問題的視角不同,寫出來的東西自然也不一樣。我這篇會從更底層的匯編語言去解讀它。而且在我寫這篇文章的過程中,發現絕大部分文章都存在一些問題,文章里 ...

Tue Apr 02 06:23:00 CST 2019 2 4436
深度解密Go語言之unsafe

目錄 指針類型 什么是 unsafe 為什么有 unsafe unsafe 實現原理 unsafe 如何使用 獲取 slice 長度 獲 ...

Mon Jun 03 17:07:00 CST 2019 0 2805
深度解密Go語言之channel

目錄 並發模型 並發與並行 什么是 CSP 什么是 channel channel 實現 CSP 為什么要 ch ...

Mon Jul 22 06:06:00 CST 2019 0 2411
深度解密Go語言之關於 interface 的10個問題

目錄 1. Go 語言與鴨子類型的關系 2. 值接收者和指針接收者的區別 方法 值接收者和指針接收者 兩者分別在何時使用 3. iface 和 eface 的區別是什么 4. 接口的動態類型和動態值 5. 編譯器 ...

Thu Apr 25 14:23:00 CST 2019 4 5786
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM