Cargando…

Parallel programming and concurrency with C# 10 and .NET 6 : a modern approach to building faster, more responsive, and asynchronous . NET applications using C# /

Leverage the latest parallel and concurrency features in .NET 6 when building your next application and explore the benefits and challenges of asynchrony, parallelism, and concurrency in .NET via practical examples Key Features Learn to implement parallel programming and handle concurrency in .NET e...

Descripción completa

Detalles Bibliográficos
Clasificación:Libro Electrónico
Autor principal: Ashcraft, Alvin (Autor)
Formato: Electrónico eBook
Idioma:Inglés
Publicado: Birmingham : Packt Publishing, Limited, 2022.
Temas:
Acceso en línea:Texto completo (Requiere registro previo con correo institucional)

MARC

LEADER 00000cam a22000007a 4500
001 OR_on1341445271
003 OCoLC
005 20231017213018.0
006 m o d
007 cr cnu---unuuu
008 220827s2022 enk o 000 0 eng d
040 |a EBLCP  |b eng  |e pn  |c EBLCP  |d ORMDA  |d OCLCQ  |d N$T  |d OCLCF  |d OCLCQ  |d IEEEE  |d OCLCO 
020 |a 1803240393 
020 |a 9781803240398  |q (electronic bk.) 
029 1 |a AU@  |b 000072719312 
035 |a (OCoLC)1341445271 
037 |a 9781803243672  |b O'Reilly Media 
037 |a 10162703  |b IEEE 
050 4 |a QA76.73.C154 
082 0 4 |a 005.13/3  |2 23/eng/20220907 
049 |a UAMI 
100 1 |a Ashcraft, Alvin,  |e author. 
245 1 0 |a Parallel programming and concurrency with C# 10 and .NET 6 :  |b a modern approach to building faster, more responsive, and asynchronous . NET applications using C# /  |c Alvin Ashcraft. 
260 |a Birmingham :  |b Packt Publishing, Limited,  |c 2022. 
300 |a 1 online resource (321 pages) 
336 |a text  |b txt  |2 rdacontent 
337 |a computer  |b c  |2 rdamedia 
338 |a online resource  |b cr  |2 rdacarrier 
588 0 |a Print version record. 
505 0 |a Cover -- Title Page -- Copyright and Credits -- Contributors -- Table of Contents -- Preface -- Part 1: Introduction to Threading in .NET -- Chapter 1: Managed Threading Concepts -- Technical requirements -- NET threading basics -- Threads and processes -- When should we use multithreading in .NET? -- Background threads -- What is managed threading? -- Creating and destroying threads -- Creating managed threads -- Pausing thread execution -- Destroying managed threads -- Handling threading exceptions -- Synchronizing data across threads -- Synchronizing code regions 
505 8 |a Manual synchronization -- Scheduling and canceling work -- Scheduling managed threads -- Canceling managed threads -- Summary -- Questions -- Chapter 2: Evolution of Multithreaded Programming in .NET -- Technical requirements -- NET threading through the years -- C# 4 and .NET Framework 4.0 -- C# 5 and 6 and .NET Framework 4.5.x -- C# 7.x and .NET Core 2.0 -- C# 8 and .NET Core 3.0 -- C# 10 and .NET 6 -- Beyond threading basics -- Managed thread pool -- Threading and timers -- Introduction to parallelism -- Using Parallel. Invoke -- Using Parallel. ForEach -- Basics of Parallel LINQ 
505 8 |a Introduction to concurrency -- ConcurrentBag -- ConcurrentQueue -- ConcurrentStack -- BlockingCollection -- ConcurrentDictionary -- Basics of async and await -- Understanding the async keyword -- Writing an async method -- Choosing the right path forward -- Summary -- Questions -- Chapter 3: Best Practices for Managed Threading -- Technical requirements -- Handling static objects -- Static data and constructors -- Controlling shared access to static objects -- Managing deadlocks and race conditions -- Mitigating deadlocks -- Avoiding race conditions 
505 8 |a Threading limits and other recommendations -- Summary -- Questions -- Chapter 4: User Interface Responsiveness and Threading -- Technical requirements -- Leveraging background threads -- Which threads are background threads? -- Using async, await, tasks, and WhenAll -- Using the thread pool -- Updating the UI thread without exceptions -- Summary -- Questions -- Part 2: Parallel Programming and Concurrency with C# -- Chapter 5: Asynchronous Programming with C# -- Technical requirements -- More about asynchronous programming in .NET -- I/O-bound operations -- CPU-bound operations 
505 8 |a Nested async methods -- Working with Task objects -- Exploring Task methods -- Exploring Task properties -- Interop with synchronous code -- Executing async from synchronous methods -- Executing synchronous code as async -- Working with multiple background tasks -- Asynchronous programming best practices -- Summary -- Questions -- Chapter 6: Parallel Programming Concepts -- Technical requirements -- Getting started with the TPL -- I/O-bound operations -- CPU-bound operations -- Parallel loops in .NET -- Basic Parallel. For loops -- Parallel loops with thread-local variables 
500 |a Simple Parallel. ForEach loops 
520 |a Leverage the latest parallel and concurrency features in .NET 6 when building your next application and explore the benefits and challenges of asynchrony, parallelism, and concurrency in .NET via practical examples Key Features Learn to implement parallel programming and handle concurrency in .NET efficiently Switch threads while debugging and learn how to monitor specific threads in Visual Studio Discover how to cancel tasks with callbacks, by polling, or by using a task with wait handles Book Description .NET has included managed threading capabilities since the beginning, but early techniques had inherent risks: memory leaks, thread synchronization issues, and deadlocks. This book will help you avoid those pitfalls and leverage the modern constructs available in .NET 6 and C# 10, while providing recommendations on patterns and best practices for parallelism and concurrency. Parallel, concurrent, and asynchronous programming are part of every .NET application today, and it becomes imperative for modern developers to understand how to effectively use these techniques. This book will teach intermediate-level .NET developers how to make their applications faster and more responsive with parallel programming and concurrency in .NET and C# with practical examples. The book starts with the essentials of multi-threaded .NET development and explores how the language and framework constructs have evolved along with .NET. You will later get to grips with the different options available today in .NET 6, followed by insights into best practices, debugging, and unit testing. By the end of this book, you will have a deep understanding of why, when, and how to employ parallelism and concurrency in any .NET application. What you will learn Prevent deadlocks and race conditions with managed threading Update Windows app UIs without causing exceptions Explore best practices for introducing asynchronous constructs to existing code Avoid pitfalls when introducing parallelism to your code Implement the producer-consumer pattern with Dataflow blocks Enforce data sorting when processing data in parallel and safely merge data from multiple sources Use concurrent collections that help synchronize data across threads Debug an everyday parallel app with the Parallel Stacks and Parallel Tasks windows Who this book is for This book is for beginner to intermediate-level .NET developers who want to employ the latest parallel and concurrency features in .NET when building their applications. Readers should have a solid understanding of the C# language and any version of the .NET Framework or .NET Core. 
590 |a O'Reilly  |b O'Reilly Online Learning: Academic/Public Library Edition 
630 0 0 |a Microsoft .NET Framework. 
630 0 7 |a Microsoft .NET Framework  |2 fast 
650 0 |a C (Computer program language) 
650 0 |a Application software  |x Development. 
650 6 |a C (Langage de programmation) 
650 6 |a Logiciels d'application  |x Développement. 
650 7 |a Application software  |x Development  |2 fast 
650 7 |a C (Computer program language)  |2 fast 
776 0 8 |i Print version:  |a Ashcraft, Alvin.  |t Parallel Programming and Concurrency with C# 10 And . NET 6.  |d Birmingham : Packt Publishing, Limited, ©2022 
856 4 0 |u https://learning.oreilly.com/library/view/~/9781803243672/?ar  |z Texto completo (Requiere registro previo con correo institucional) 
938 |a ProQuest Ebook Central  |b EBLB  |n EBL7074130 
938 |a EBSCOhost  |b EBSC  |n 3361262 
994 |a 92  |b IZTAP