3 options
Multithreading in C# 5.0 cookbook / Eugene Agafonov.
- Format:
- Book
- Author/Creator:
- Agafonov, Eugene.
- Language:
- English
- Subjects (All):
- C# (Computer program language).
- Object-oriented programming languages.
- Physical Description:
- 1 online resource (268 p.)
- Edition:
- 1st ed.
- Place of Publication:
- Birmingham : Packt Publishing, 2013.
- Language Note:
- English
- Biography/History:
- Agafonov Evgenii: Eugene Agafonov leads Lingvo Live development department at ABBYY, and lives and works in Moscow. He has over 15 years of professional experience in software development, and started to work with C# since it was in beta version. He is Microsoft MVP in ASP. NET since 2006 and he often speaks at local software development conferences, like DevCon Russia, about cutting edge technologies in modern web and server-side application development. His main professional interests are cloud-based software architecture, scalability and reliability. Eugene is a huge fan of football and plays the guitar with a local rock band. You can reach him at his personal blog eugeneagafonov. com or twitter @eugene_agafonov. 3. Other books you may have worked on. Multithreading in C# 5. 0 Cookbook 4. Acknowledgements - people you'd like to thank for their help in producing this book, (friends, family, etc) - this part is written in the first person. I'd like it just to be a dedication To Mom and Dad you are the best parents on Earth and I love you so much
- Summary:
- Cookbook.Multithreading in C# 5.0 Cookbook is written for existing C# developers who want a complete, professional, and authoritative guide to multithreading. You dont need any experience with multithreaded programming to use this book.
- Contents:
- Intro
- Multithreading in C# 5.0 Cookbook
- Table of Contents
- Credits
- About the Author
- About the Reviewers
- www.PacktPub.com
- Support files, eBooks, discount offers and more
- Why Subscribe?
- Free Access for Packt account holders
- Preface
- What this book covers
- What you need for this book
- Who this book is for
- Conventions
- Reader feedback
- Customer support
- Downloading the example code
- Errata
- Piracy
- Questions
- 1. Threading Basics
- Introduction
- Creating a thread in C#
- Getting ready
- How to do it...
- How it works...
- Pausing a thread
- Making a thread wait
- Aborting a thread
- Determining a thread state
- Thread priority
- Foreground and background threads
- Passing parameters to a thread
- There's more…
- Locking with a C# lock keyword
- Locking with a Monitor construct
- Handling exceptions
- 2. Thread Synchronization
- Performing basic atomic operations
- Using the Mutex construct
- Using the SemaphoreSlim construct
- Using the AutoResetEvent construct
- How to do it.
- How it works...
- Using the ManualResetEventSlim construct
- Using the CountDownEvent construct
- Using the Barrier construct
- Using the ReaderWriterLockSlim construct
- Using the SpinWait construct
- 3. Using a Thread Pool
- Invoking a delegate on a thread pool
- Posting an asynchronous operation on a thread pool
- Thread pool and the degree of parallelism
- Implementing a cancellation option
- Using a wait handle and timeout with a thread pool
- Using a timer
- Using the BackgroundWorker component
- 4. Using Task Parallel Library
- Creating a task
- Performing basic operations with a task
- Combining tasks together
- Converting the APM pattern to tasks
- Converting the EAP pattern to tasks
- Handling exceptions in tasks
- Running tasks in parallel
- Tweaking tasks execution with TaskScheduler
- 5. Using C# 5.0
- Using the await operator to get asynchronous task results
- Using the await operator in a lambda expression
- Using the await operator with consequent asynchronous tasks
- Using the await operator for the execution of parallel asynchronous tasks execution
- Handling exceptions in the asynchronous operations
- Avoid using the captured synchronization context
- Working around the async void method
- Designing a custom awaitable type
- Using the dynamic type with await
- 6. Using Concurrent Collections
- Using ConcurrentDictionary
- Implementing asynchronous processing using ConcurrentQueue
- Changing asynchronous processing order ConcurrentStack
- Creating a scalable crawler with ConcurrentBag
- Generalizing asynchronous processing with BlockingCollection
- 7. Using PLINQ
- Using the Parallel class.
- Getting ready
- Parallelizing a LINQ query
- Tweaking the parameters of a PLINQ query
- Handling exceptions in a PLINQ query
- Managing data partitioning in a PLINQ query
- Creating a custom aggregator for a PLINQ query
- 8. Reactive Extensions
- Converting a collection to asynchronous Observable
- Writing custom Observable
- Using Subjects
- Creating an Observable object
- Using LINQ queries against the observable collection
- Creating asynchronous operations with Rx
- 9. Using Asynchronous I/O
- Working with files asynchronously
- Writing an asynchronous HTTP server and client
- Working with a database asynchronously
- Calling a WCF service asynchronously
- 10. Parallel Programming Patterns
- Implementing Lazy-evaluated shared states
- Implementing Parallel Pipeline with BlockingCollection
- How it works.
- Implementing Parallel Pipeline with TPL DataFlow
- Implementing Map/Reduce with PLINQ
- 11. There's More
- Using a timer in a Windows Store application
- Using WinRT from usual applications
- Using BackgroundTask in Windows Store applications
- Index.
- Notes:
- Includes index.
- Description based on online resource; title from PDF (ebrary, viewed December 30, 2013).
- ISBN:
- 1-84969-765-5
- OCLC:
- 864381901
The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.