A traditional multithreading scenario is one where multithreading can be of benefit even on a single-core
machine—with no true parallelization taking place. We covered these previously: they include such tasks as
maintaining a responsive user interface and downloading two web pages at once.
Some of the constructs that we'll cover in the parallel programming sections are also sometimes useful in
traditional multithreading. In particular:
· PLINQ and the Parallel class are useful whenever you want to execute operations in parallel and then
wait for them to complete (structured parallelism). This includes non-CPU-intensive tasks such as calling a
web service.
· The task parallelism constructs are useful when you want to run some operation on a pooled thread, and
also to manage a task's workflow through continuations and parent/child tasks.
· The concurrent collections are sometimes appropriate when you want a thread-safe queue, stack, or
dictionary.
· BlockingCollection provides an easy means to implement producer/consumer structures.
Join the conversation! Your thoughts help the community grow.
Sign in to leave a comment
It is the same account you read, post and publish with — and you will come straight back to this page.

Mahesh ChandPosted Jun 9, 2011, 12:33 AM
You should fix formatting of the blog in the editor.