-
>
全國計算機等級考試最新真考題庫模擬考場及詳解·二級MSOffice高級應用
-
>
決戰行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調優實踐之路
-
>
第一行代碼Android
-
>
JAVA持續交付
-
>
EXCEL最強教科書(完全版)(全彩印刷)
-
>
深度學習
.NET內存管理寶典 版權信息
- ISBN:9787302571339
- 條形碼:9787302571339 ; 978-7-302-57133-9
- 裝幀:一般膠版紙
- 冊數:暫無
- 重量:暫無
- 所屬分類:>
.NET內存管理寶典 本書特色
為什么要閱讀本書 正如本書第14章14.3節所提到的,如下類型的應用程序十分需要本書的知識。 ·金融軟件:特別是實時交易和所有需要基于大量各種數據以盡快得出答案的分析決策。 ·大數據:雖然大數據通常都是批量、慢速處理,但如果處理每筆數據都慢一點點,累加起 來就會將總體處理時間拉長數小時或數天。此外,有些應用程序,比如搜索引擎,同樣需要快速得到問題的答案。 ·游戲:在一個以幀速率(FPS)決定游戲接受度和圖像質量上限的世界中,每一毫秒都不能 浪費。 ·機器學習:使用日益廣泛的機器學習(ML)需要越來越強的計算能力去執行各種復雜算法。除了開發以上應用程序之外,正如本書第1章開頭所說的,如果你想成為一名高級程序員,你不想止步于代碼能夠工作,還想有追求,關心工作的質量,關心它是如何工作的,那么你應該讀這本書。
.NET內存管理寶典 內容簡介
了解.NET內存管理的內部工作原理、陷阱和技術,以便有效地避免軟件中出現各種性能和可伸縮性問題。盡管.NET具有自動內存管理功能,但了解 .NET的內存管理工作原理以及如何*好地編寫與之高效交互的軟件方面仍有許多益處!.NET內存管理寶典 提高代碼質量、性能和可擴展性》是你通過了解和處理 .NET 中的內存管理來編寫出更好軟件的全面指南。 《.NET內存管理寶典 提高代碼質量、性能和可擴展性》經過了 Microsoft 的 .NET 團隊全面審查,包含 了25 個有價值的故障排除方案,旨在幫助診斷具有挑戰性的內存問題。讀者還將受益于多個 .NET 內存管理”規則”,這些規則介紹了編寫內存感知代碼的方法以及避免常見的破壞性陷阱的方法。 本書內容 ● 了解自動內存管理的理論基礎 ● 深入研究.NET內存管理的各個方面,包括對垃圾回收(GC)實現的詳細介紹,這些知識如果自行摸索需要多年經驗才能獲得 ● 獲得如何將這些知識應用于實際軟件開發中的實用建議 ● 使用與 .NET 內存管理相關工具的實用知識來診斷各種與內存相關的問題 ● 探索高級內存管理的各個方面,包括使用Span和Memory類型
.NET內存管理寶典 目錄
目 錄
第1章 基本概念 1
1.1 內存相關術語 2
1.2 手動內存管理 15
1.3 自動內存管理 19
1.4 引用計數 23
1.5 跟蹤回收器(Tracking Collector ) 26
1.6 小歷史 32
1.7 本章小結 34
規則1 – 自學 34
第2章 底層內存管理 37
2.1 硬件 37
2.2 操作系統 55
2.3 NUMA和CPU組 70
2.4 本章小結 71
規則2 – 避免隨機訪問,擁抱循序訪問 71
規則3 – 提高空間和時間數據局部性 72
規則4 – 不要放棄使用更高級技巧的可能性 72
第3章 內存測量 73
3.1 盡早測量 74
3.2 Windows環境 81
3.3 Linux環境 123
3.4 本章小結 135
規則5 – 盡早測量GC 137
第4章 .NET基礎知識 139
4.1 .NET版本 139
4.2 .NET內部原理 141
4.3 程序集和應用程序域 148
4.4 進程內存區域 150
4.5 類型系統 161
4.6 字符串 173
4.7 裝箱與拆箱 185
4.8 按引用傳遞 188
4.9 類型數據局部性 190
4.10 靜態數據 193
4.11 本章小結 197
規則6 – 測量你的程序 197
規則7 – 不要假設內存泄漏不存在 198
規則8 – 考慮使用結構 198
規則9 – 考慮使用字符串暫存 198
規則10 – 避免裝箱 198
第5章 內存分區 201
5.1 分區策略 201
5.2 按大小分區 202
5.3 按生存期分區 207
5.4 按物理分區 224
5.5 本章小結 241
規則11 – 監視代大小 241
規則12 – 避免不必要的堆引用 241
規則13 – 監視段使用情況 242
第6章 內存分配 243
6.1 內存分配簡介 243
6.2 bump pointer分配 244
6.3 空閑列表分配 250
6.4 創建新對象 253
6.5 堆再平衡 260
6.6 OutOfMemoryException異常 262
場景6-1:OutOfMemoryException異常 263
6.7 堆棧分配 265
6.8 避免分配 266
6.9 本章小結 300
規則14 – 在性能攸關的地方,
避免堆分配 300
規則15 – 避免過多的LOH分配 301
規則16 – 如果可行,在堆棧上分配 301
第7章 垃圾回收——簡介 303
7.1 高層視圖 303
7.2 GC過程的示例 304
7.3 GC過程的步驟 309
場景7-1:分析GC的使用情況 309
7.4 分析GC 313
7.5 垃圾回收性能調優數據 314
7.6 回收觸發器 325
7.7 EE掛起 334
場景7-4:分析GC掛起時間 335
7.8 要判決的代 336
場景7-5:被判決的代的分析 338
7.9 本章小結 339
第8章 垃圾回收——標記階段 341
8.1 對象的遍歷與標記 341
8.2 局部變量根 342
8.3 終結根 357
8.4 GC內部根 357
8.5 GC句柄根 358
8.6 處理內存泄漏 363
第9章 垃圾回收——計劃階段 371
9.1 小對象堆 371
9.2 大對象堆 389
9.3 壓縮的決策 390
9.4 本章小結 391
第10章 垃圾回收——清除和壓縮 393
10.1 清除階段 393
10.2 壓縮階段 394
10.3 本章小結 404
規則17 – 觀察運行時掛起 405
規則18 – 避免“中年危機” 406
規則19 – 避免老的代和LOH碎片化 406
規則20 – 避免顯式GC 407
規則21 – 避免內存泄漏 407
規則22 – 避免固定 407
第11章 GC風格 409
11.1 模式概述 409
11.2 模式配置 411
11.3 GC停頓和開銷 413
11.4 模式描述 414
11.5 延遲模式 426
11.6 選擇GC風格 431
11.7 本章小結 438
規則23 – 有意識地選擇GC模式 439
規則24 – 記住延遲模式的相關知識 439
第12章 對象生存期 441
12.1 對象與資源的生命周期 441
12.2 終結 442
12.3 Disposable對象 463
12.4 安全句柄 468
12.5 弱引用 473
12.6 本章小結 486
規則25 – 避免終結器 486
規則26 – 首選顯式清理 487
第13章 其他主題 489
13.1 依賴句柄 489
13.2 線程局部存儲 494
13.3 托管指針 504
13.4 關于結構的更多知識 526
13.5 對象/結構布局 533
13.6 非托管約束 541
13.7 本章小結 546
第14章 高級技巧 547
14.1 Span和Memory 547
14.2 Unsafe 568
14.3 面向數據設計 573
14.4 未來特性 585
14.5 本章小結 595
第15章 編程API 597
15.1 GC API 597
15.2 CLR Hosting 609
15.3 ClrMD 616
15.4 TraceEvent庫 621
15.5 自定義GC 623
15.6 本章小結 626
.NET內存管理寶典 作者簡介
作 者 簡 介 Konrad Kokosa是一位經驗豐富的軟件設計師和開發人員。他對Microsoft公司的技術特別感興趣,同時對其他所有技術也充滿好奇。Konrad從事編程工作已經有十多年,解決過.NET世界中的許多性能問題和架構難題,設計和提升過.NET應用程序的運行速度。他是一名獨立顧問,是meetup和技術會議講師,喜歡寫Twitter。Konrad還分享了他作為.NET領域培訓講師的激情歲月,特別是在應用程序性能、編碼優秀實踐和診斷方面。他是華沙Web性能小組的創始人。他是Visual Studio和開發工具類別中的Microsoft MVP。他是Dotnetos.org的聯合創始人。Dotnetos.org由三位.NET愛好者發起,主要組織.NET性能相關的會議。 譯 者 簡 介 葉偉民 《.NET并發編程實戰》的譯者。曾在美國舊金山工作,具有16年的.NET開發經驗,目前從業于金融科技行業。 涂曙光 前微軟技術專家,專注于.NET和JavaScript技術領域。目前在私募基金行業從事低延遲交易系統的開發。
- >
推拿
- >
龍榆生:詞曲概論/大家小書
- >
二體千字文
- >
月亮虎
- >
企鵝口袋書系列·偉大的思想20:論自然選擇(英漢雙語)
- >
人文閱讀與收藏·良友文學叢書:一天的工作
- >
羅庸西南聯大授課錄
- >
羅曼·羅蘭讀書隨筆-精裝