- Book Chapter
- 10.1007/978-1-4302-2432-7_13
Reactive, Asynchronous, and Parallel Programming
- Jan 01, 2010
- Don Syme + 2 more +2
So far in this book, you've seen functions and objects that process their inputs immediately using a single thread of execution where the code runs to completion and produces useful results or state changes. In this chapter, you turn your attention to concurrent, parallel, asynchronous, and reactive programs. These represent substantially different approaches to programming from those you've seen so far. Some of the reasons for turning to these techniques are as follows: To achieve better responsiveness in a graphical user interface (GUI) To report progress results during a long-running computation and to support cancellation of these computations To achieve greater throughput in a reactive application or service To achieve faster processing rates on a multiprocessor machine or cluster To take advantage of the I/O parallelism available in modern disk drives or network connections To sustain processing while network and disk I/O operations are in process KeywordsGraphical User InterfaceParallel ProgramMain ThreadMessage QueueWork ThreadThese keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Read more