更新时间:2021-08-27 18:47:46
封面
Title Page
Copyright and Credits
C# 7 and .NET Core 2.0 High Performance
Packt Upsell
Why subscribe?
PacktPub.com
Contributors
About the author
About the reviewer
Packt is searching for authors like you
Preface
Who this book is for
What this book covers
To get the most out of this book
Download the example code files
Download the color images
Conventions used
Get in touch
Reviews
What's New in .NET Core 2 and C# 7?
Evolution of .NET
New improvements in .NET Core 2.0
Performance improvements
RyuJIT compiler in .NET Core
Profile guided optimization
Simplified packaging
Upgrading path from .NET Core 1.x to 2.0
1. Install .NET Core 2.0
2. Upgrade TargetFramework
3. Update .NET Core SDK version
4. Update .NET Core CLI
Changes in ASP.NET Core Identity
Exploring .NET Core CLI and New Project Templates
Understanding .NET Standard
Versioning of .NET Standard
New improvements in .NET Standard 2.0
More APIs in .NET Standard 2.0
Compatibility mode
Creating a .NET Standard library
What comes with ASP.NET Core 2.0
ASP.NET Core Razor Pages
Automatic Page and View compilation on publishing
Razor support for C# 7.1
Simplified configuration for Application Insights
Pooling connections in Entity Framework Core 2.0
New features in C# 7.0
Tuples
Patterns
Constant pattern
Type pattern
Var pattern
Reference returns
Expression bodied member extended
Creating Local Functions
Out variables
Async Main
Writing quality code
Summary
Understanding .NET Core Internals and Measuring Performance
.NET Core internals
CoreFX
CoreCLR
Understanding MSIL CLI CTS and CLS
How the CLR works
From compilation to execution – Under the hood
Garbage collection
Generations in GC
.NET Native and JIT compilation
Utilizing multiple cores of the CPU for high performance
How releasing builds increases performance
Benchmarking .NET Core 2.0 applications
Exploring BenchmarkDotNet
How it works
Setting parameters
Memory diagnostics using BenchmarkDotnet
Adding configurations
Multithreading and Asynchronous Programming in .NET Core
Multithreading versus asynchronous programming
Multithreading in .NET Core
Multithreading caveats
Threads in .NET Core
Creating threads in .NET Core
Thread lifetime
The thread pool in .NET
Thread synchronization
Monitors
Task parallel library (TPL)
Creating a task using TPL
Task-based asynchronous pattern (TAP)
Naming convention
Return type
Parameters
Exceptions
Task status
Task cancellation
Task progress reporting
Implementing TAP using compilers
Implementing TAP with greater control over Task