定 價(jià):¥59.00
作 者: | 李爭(zhēng) |
出版社: | 清華大學(xué)出版社 |
叢編項(xiàng): | |
標(biāo) 簽: | 暫缺 |
ISBN: | 9787302505334 | 出版時(shí)間: | 2018-09-01 | 包裝: | 平裝 |
開(kāi)本: | 16開(kāi) | 頁(yè)數(shù): | 字?jǐn)?shù): |
叢書(shū)序Ⅰ
推薦序Ⅲ
前言Ⅴ
贊譽(yù)Ⅸ
第1章.NET Core基礎(chǔ)知識(shí)
1.1.NET Core到底是什么
1.1.1從軟件許可協(xié)議說(shuō)開(kāi)源
1.1.2構(gòu)成.NET Core的重要組件
1.2.NET Standard又是什么
1.3.NET Core的一些重要工具
1.4常見(jiàn)問(wèn)題解答
第2章.NET Core的編譯
2.1.NET Core源代碼在Linux操作系統(tǒng)上的編譯
2.1.1獲取.NET Core源代碼
2.1.2安裝編譯源代碼必要的工具
2.1.3在CentOS上手工編譯LLVM、Clang和LLDB
2.1.4在Linux上編譯.NET Core源代碼
2.2.NET Core源代碼在Windows操作系統(tǒng)上的編譯
2.2.1下載和安裝Visual Studio
2.2.2安裝其他必備軟件
2.2.3在Windows系統(tǒng)上執(zhí)行.NET Core編譯
2.3.NET Core源代碼在macOS操作系統(tǒng)上的編譯
第3章.NET Core命令行工具
3.1.NET Core CLI的安裝
3.2創(chuàng)建.NET Core項(xiàng)目
3.3.NET Core項(xiàng)目的遷移
3.4.NET Core項(xiàng)目的構(gòu)建
3.5.NET Core項(xiàng)目的發(fā)布
3.6對(duì).NET Core項(xiàng)目進(jìn)行管理
3.6.1dotnet sln命令介紹
3.6.2項(xiàng)目之間的引用管理
3.6.3項(xiàng)目的包管理
3.6.4項(xiàng)目引用NuGet包的恢復(fù)
3.7.NET Core應(yīng)用的執(zhí)行
3.8將.NET Core項(xiàng)目發(fā)布成NuGet包
3.8.1dotnet pack命令介紹
3.8.2dotnet nuget push命令介紹
3.8.3dotnet nuget locals命令介紹
3.8.4dotnet nuget delete命令介紹
3.9dotnet相關(guān)命令的使用
3.9.1創(chuàng)建解決方案和項(xiàng)目
3.9.2設(shè)置項(xiàng)目的引用
3.9.3添加測(cè)試工程
第4章調(diào)試環(huán)境的配置
4.1調(diào)試環(huán)境設(shè)置概述
4.2Linux操作系統(tǒng)調(diào)試環(huán)境設(shè)置
4.2.1在Linux上設(shè)置ulimit
4.2.2在Linux操作系統(tǒng)上部署調(diào)試器
4.2.3在Linux操作系統(tǒng)上抓取內(nèi)存轉(zhuǎn)儲(chǔ)文件
4.3在macOS操作系統(tǒng)上部署調(diào)試器
4.4在Windows操作系統(tǒng)上部署調(diào)試器
4.4.1Windows上安裝Windbg
4.4.2在Windows上抓取內(nèi)存轉(zhuǎn)儲(chǔ)
第5章調(diào)試器的基本命令
5.1使用LLDB進(jìn)行調(diào)試
5.1.1LLDB調(diào)試器簡(jiǎn)介
5.1.2命令行參數(shù)
5.1.3一段用于演示的代碼
5.1.4LLDB的啟動(dòng)和退出
5.1.5設(shè)置斷點(diǎn)
5.1.6單步調(diào)試指令
5.1.7查看調(diào)用堆棧
5.1.8線程切換
5.1.9寄存器調(diào)試指令
5.1.10查看內(nèi)存數(shù)據(jù)
5.2Windbg調(diào)試器和基本指令
5.2.1Windbg簡(jiǎn)介
5.2.2Windbg的啟動(dòng)和退出
5.2.3Windbg設(shè)置斷點(diǎn)
5.2.4Windbg查看堆棧調(diào)用
5.2.5Windbg線程相關(guān)指令
5.2.6Windbg寄存器相關(guān)指令
5.2.7Windbg查看內(nèi)存數(shù)據(jù)
第6章.NET基本調(diào)試命令
6.1.NET調(diào)試擴(kuò)展概覽
6.2.NET數(shù)據(jù)結(jié)構(gòu)的基本知識(shí)
6.2.1對(duì)象在內(nèi)存中的形態(tài)
6.2.2MethodTable和EEClass
6.2.3MethodDesc
6.3.NET調(diào)試擴(kuò)展命令
6.3.1代碼和堆棧調(diào)試命令
6.3.2CLR數(shù)據(jù)結(jié)構(gòu)相關(guān)調(diào)試命令
6.3.3內(nèi)存對(duì)象分析相關(guān)命令
6.4那些所謂的調(diào)試套路
第7章多線程
7.1多線程基礎(chǔ)
7.1.1線程的基本概念
7.1.2.NET Core多線程同步對(duì)象
7.2一個(gè)簡(jiǎn)單的多線程程序調(diào)試
7.2.1MassiveThreads程序
7.2.2LLDB調(diào)試MassiveThreads
7.2.3Windbg調(diào)試MassiveThreads
7.2.4MassiveThreads調(diào)試總結(jié)
7.3程序死鎖的調(diào)試
7.3.1DBDeadlockHang應(yīng)用程序
7.3.2使用LLDB調(diào)試死鎖
7.3.3使用Windbg調(diào)試死鎖
7.3.4死鎖調(diào)試總結(jié)
第8章async和await
8.1基于任務(wù)的異步編程模式
8.2如何寫(xiě)好一個(gè)TAP異步方法
8.2.1函數(shù)的命名和聲明
8.2.2異步方法中的代碼
8.2.3函數(shù)中的異常處理
8.2.4異步方法執(zhí)行過(guò)程中的終止
8.2.5異步任務(wù)執(zhí)行進(jìn)度的通知
8.3async/await是什么
8.4async/await調(diào)試
8.4.1使用LLDB在Linux上調(diào)試異步方法
8.4.2在Visual Studio 2017上調(diào)試異步方法
第9章內(nèi)存和垃圾收集
9.1.NET Core內(nèi)存管理工作原理
9.1.1從一行簡(jiǎn)單的代碼看內(nèi)存申請(qǐng)
9.1.2.NET Core內(nèi)存管理概覽
9.1.3托管堆內(nèi)存的分代管理
9.1.4Finalizer隊(duì)列
9.2內(nèi)存泄漏調(diào)試
9.2.1如何診斷內(nèi)存泄漏
9.2.2Linux的內(nèi)存泄漏調(diào)試
9.2.3Windows下的內(nèi)存泄漏調(diào)試
9.3Finalizer隊(duì)列調(diào)試
后記