Rent $18.75
- List Price: $49.99
- Save: $31.24 (62%)
- FREE return shipping at the end of the semester.
- Access codes and supplements are not guaranteed with rentals.
Rented from Amazon Warehouse
Fulfilled by Amazon
Fulfillment by Amazon (FBA) is a service we offer sellers that lets them store their products in Amazon's fulfillment centers, and we directly pack, ship, and provide customer service for these products. Something we hope you'll especially enjoy: FBA items qualify for FREE Shipping and .
If you're a seller, Fulfillment by Amazon can help you grow your business. Learn more about the program.
Buy new:
$37.49$37.49
FREE delivery:
Friday, Feb 10
Ships from: Amazon.com Sold by: Amazon.com
Buy Used: $31.46
Other Sellers on Amazon
& FREE Shipping
91% positive over last 12 months
Usually ships within 2 to 3 days.
& FREE Shipping
79% positive over last 12 months
& FREE Shipping
83% positive over last 12 months

Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required. Learn more
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.


Concurrency in C# Cookbook: Asynchronous, Parallel, and Multithreaded Programming 2nd Edition
Price | New from | Used from |
- Kindle
$11.12 - $30.99 Read with Our Free App - Paperback
$18.75 - $37.49
If you’re one of many developers still uncertain about concurrent and multithreaded development, this practical cookbook will change your mind. With more than 85 code-rich recipes in this updated second edition, author Stephen Cleary demonstrates parallel processing and asynchronous programming techniques using libraries and language features in .NET and C# 8.0.
Concurrency is now more common in responsive and scalable application development, but it’s still extremely difficult to code. The detailed solutions in this cookbook show you how modern tools raise the level of abstraction, making concurrency much easier than before. Complete with ready-to-use code and discussions about how and why solutions work, these recipes help you:
- Get up to speed on concurrency and async and parallel programming
- Use async and await for asynchronous operations
- Enhance your code with asynchronous streams
- Explore parallel programming with .NET’s Task Parallel Library
- Create dataflow pipelines with .NET’s TPL Dataflow library
- Understand the capabilities that System.Reactive builds on top of LINQ
- Utilize threadsafe and immutable collections
- Learn how to conduct unit testing with concurrent code
- Make the thread pool work for you
- Enable clean, cooperative cancellation
- Examine scenarios for combining concurrent approaches
- Dive into asynchronous-friendly object-oriented programming
- Recognize and write adapters for code using older asynchronous styles
- ISBN-10149205450X
- ISBN-13978-1492054504
- Edition2nd
- PublisherO'Reilly Media
- Publication dateSeptember 17, 2019
- LanguageEnglish
- Dimensions7 x 0.75 x 9 inches
- Print length254 pages
What other items do customers buy after viewing this item?
From the brand

-
-
Sharing the knowledge of experts
O'Reilly's mission is to change the world by sharing the knowledge of innovators. For over 40 years, we've inspired companies and individuals to do new things (and do them better) by providing the skills and understanding that are necessary for success.
Our customers are hungry to build the innovations that propel the world forward. And we help them do just that.
From the Publisher

From the Preface
I think the animal on this cover, a common palm civet, is applicable to the subject of this book. I knew nothing about this animal until I saw the cover, so I looked it up. Common palm civets are considered pests because they defecate all over attics and make loud noises fighting with each other at the most inopportune times. Common palm civets enjoy eating coffee cherries, and they pass the coffee beans through. Kopi luwak, one of the most expensive coffees in the world, is made from the coffee beans extracted from civet excretions. According to the Specialty Coffee Association of America, “It just tastes bad.”
This makes the common palm civet a perfect mascot for concurrent and multithreaded development. To the uninitiated, concurrency and multithreading are undesirable. They make well-behaved code act up in the most horrendous ways. Race conditions & whatnot cause loud crashes. Some have gone so far as to declare “threads are evil” and avoid concurrency completely.
There are a handful of developers who have developed a taste for concurrency and use it without fear; but most developers have been burned in the past by concurrency, and that experience has left a bad taste in their mouth.
However, for modern applications, concurrency is quickly becoming a requirement. Users these days expect fully responsive interfaces, and server applications are having to scale to unprecedented levels. Concurrency addresses both of these trends.

Fortunately, there are many modern libraries that make concurrency much easier! Parallel processing & asynchronous programming are no longer exclusively the domains of wizards. By raising the level of abstraction, these libraries make responsive and scalable application development a realistic goal for every developer. If you have been burned in the past, when concurrency was extremely difficult, then I encourage you to give it another try with modern tools. We can probably never call concurrency easy, but it sure isn’t as hard as it used to be!
Who Should Read This Book
This book is written for developers who want to learn modern approaches to concurrency. I do assume that you’ve got a fair amount of .NET experience, including an understanding of generic collections, enumerables, and LINQ. I do not expect that you have any multithreading or asynchronous programming knowledge.
If you do have some experience in those areas, you may still find this book helpful because it introduces newer libraries that are safer and easier to use. Concurrency is useful for any kind of application. It doesn’t matter whether you work on desktop, mobile, or server applications; these days concurrency is practically a requirement across the board.
You can use the recipes in this book to make user interfaces more responsive and servers more scalable. We are already at the point where concurrency is ubiquitous, and understanding these techniques and their uses is essential knowledge for the professional developer.
Editorial Reviews
About the Author
Stephen Cleary is a developer with extensive experience ranging from ARM firmware to Azure. He has contributed to open source from the very beginning, starting with the Boost C++ libraries, and has released several libraries and utilities of his own.
Product details
- Publisher : O'Reilly Media; 2nd edition (September 17, 2019)
- Language : English
- Paperback : 254 pages
- ISBN-10 : 149205450X
- ISBN-13 : 978-1492054504
- Item Weight : 14.4 ounces
- Dimensions : 7 x 0.75 x 9 inches
- Best Sellers Rank: #203,833 in Books (See Top 100 in Books)
- #12 in Parallel Computer Programming
- #37 in C# Programming (Books)
- #57 in Microsoft C & C++ Windows Programming
- Customer Reviews:
About the author

Discover more of the author’s books, see similar authors, read author blogs and more
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on Amazon-
Top reviews
Top reviews from the United States
There was a problem filtering reviews right now. Please try again later.
"I liked that it was short and the chapter separation is very coherent. It allows you to skip over the stuff you might not care about (Reactive Extensions, Parallel LINQ) and get to the stuff you want to learn. For me, it was the first place where I began to understand, comprehensively, the purpose of the Task and Parallel classes, versus the await keyword, and conceptually the difference between parallelism and asynchronicity and how they should be used together. It covers cancellation and exception handling thoroughly as well. Maybe I should copy and paste this e-mail into an amazon review?"
The way the book looked when it showed up at my place has caused me to seriously reconsider ordering hard copies from Amazon in the future. Lousy shipping container - they might as well have slapped my address on the cover and mailed it bare.
Personally, I would rather go through ms docs pages. Here are a few titles: "Preview of Immutable Colletions", "Dataflow (Task Parallel Library)", "how-to-write-messages-to-and-read-messages-from-a-dataflow-block", (a few other pages on data flow), "blockingcollection-overview", "Parallel Programming in .NET", "Async in depth", "Getting Started with Rx" etc.
Top reviews from other countries


All in all a great read though and would be a great reference to programmers.

Wesentlich informativer fand ich die entsprechenden Kapitel in "C# 7.0 in a Nutshell" der Gebrüder Albahari sowie das "C# in Depth" Buch. Wenn man eines dieser beiden Bücher hat, kann man sich dieses sparen.
Mich nervt das Evangelikale Bekenntnis des Autors in der Einleitung. Das hat in einem Programmierbuch nichts verloren. Donald Knuth ist auch ein frommer Mensch. Aber er dankt im Vorwort zur "Art of Programming" seinem alten Computer, mit dem er einst viele vergnügliche Abende verbracht hat und nicht wie Clearly Jesus. Knuth hat über seinen Glauben mit "Bible Texts Illuminated" ein eigenes, sehr schönes Buch gemacht. Wobei es selbst in diesem Buch auch vom Programmierstandpunkt mehr zu lernen gibt als in dieser Blogsammlung. Aber gut, Stephen Cleary ist auch kein Donald Knuth. Für das Evangelikale Bekennertum habe ich in der Bewertung einen Stern abgezogen.


Ansonsten nettes Buch.