C♯ Multithreaded and Parallel Programming.
If you are a C♯ developer and want to learn how to take advantage of the features of .NET for concurrent and multithreaded applications, then this book is for you. If you are already comfortable with C♯ but want to learn more about parallel design patterns, threads, tasks, and async, then look no fu...
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
Birmingham :
Packt Publishing,
2014.
|
Colección: | Professional expertise distilled.
|
Temas: | |
Acceso en línea: | Texto completo |
Tabla de Contenidos:
- Copyright; Credits; About the Author; About the Reviewers; www.PacktPub.com; Table of Contents; Preface; Chapter 1: Understanding Multiprocessing and Multiple Cores; Mono-processor systems
- the old gladiators; Single core
- only one warrior to fight against everybody; Doing a tiny bit of each task; Multiprocessor systems
- many warriors to win a battle; Multiple core processors and hyperthreading; Taking advantage of multiple execution cores; Examining our hardware; OS scheduler operations; Designing for concurrency; Estimating performance improvements; Amdahl's law; Gustafson's law; Summary.
- Chapter 2: Looking at Multithreaded Classes
- BackgroundWorkerGetting started with the BackgroundWorker component; Simple example without a BackgroundWorker object; How to do it; How does it work?; WPF example with an asynchronous BackgroundWorker; How to do it; How does it work?; How does it work without blocking the UI?; How to do it; How does it work?; WPF example with an synchronous BackgroundWorker; Showing progress; How to do it; How does it work?; Canceling a BackgroundWorker thread; How to do it; How does it work?; Working with multiple BackgroundWorker components; How does it work?
- How does it work?Exploring other examples; Summary; Chapter 3: Thread Class
- Heavyweight Concurrency in C♯; Creating threads with the Thread class; Let's get started with an encryption program; How to do it; How it works; Creating an application with threads; How to do it; How it works; Sharing data between threads; How to do it; How it works; Passing parameters to threads; How to do it; How it works; Have a go hero
- concurrent UI feedback; Summary; Chapter 4: Advanced Thread Processing; Pipelining; Explaining pipelining using an image processing application; How to do it; How it works.
- Understanding the pixels' color compositionsPausing and restarting threads; How to do it; How it works; Signals between threads; How to do it; How it works; Using the AutoResetEvent class to handle signals between threads; Using the WaitHandle class to check for signals; Joining threads; How to do it; How it works; Locking resources to ensure thread-safe data; How to do it; How it works; Error handling with threads; How to do it; How it works; Summary; Chapter 5: Lightweight Concurrency
- Task Parallel Library (TPL); Task Parallel Library; Exploring tasks; How to do it; How it works.
- Tasks with return valuesHow to do it; How it works; Concurrent collections; How to do it; How it works; Exploring the TaskFactory class; How to do it; How it works; Task schedulers; Introducing the Parallel class; How to do it; How it works; Delegates and lambda expressions; Summary; Chapter 6: Task-based Parallelism; Waiting for a task to complete; How to do it; How it works; Waiting for multiple tasks to complete; How to do it; How it works; Canceling a task; How to do it; How it works; Task exception handling; Summary; Chapter 7: Data Parallelism; Parallel loop processing; How to do it.