Preview

05 - Thinking concurrently

 1. Concurrent processing is any situation in the design or programming of a system when you would want more than one thing happening at the same time.

  FALSE

  TRUE

 2. Most modern computers can process a number of instructions at the same time (thanks to _________________________________________________).

  binary trees and divide and conquer algorithms

  graphs and hash tables

  multicore processors and pipelining

  arrays and serial binary trees

 3. Modules processed at the same time should always be dependent on each other and never independent.

  FALSE

  TRUE

 4. _______________ can be commonly used to visualise projects that are occur concurrently.

  Abstraction techniques

  Divide and conquer algorithms

  Binary trees

  Gantt charts

 5. _______________________ enable different parts of a program to be executed simultaneously

  Finite algorithms

  Gantt charts

  Parallel processors

  Functional progrms

 6. The potential advantages of concurrent processing is programs executed faster and savings are made on energy.

  FALSE

  TRUE

 7. The programs that have to be written for parallel processing are substantially simpler and easier to write than for sequential programming.

  FALSE

  TRUE

 8. The advantage of parallel processing is that time will be hugely saved even if instructions have to be executed in sequence.

  FALSE

  TRUE

 9. Concurrent processing describes two tasks occurring asynchronously, meaning _________ in which the tasks are executed is not predetermined

  the order

  the binary sort sequence

  the space

  the time

 10. Concurrency means, essentially, that task A and task B both need to happen independently of each other, and A starts running, and then B starts before A is finished
Important and useful note: 
Parallelism is one way to implement concurrency, but it's not the only one. 
Another popular solution is interleaved processing (a.k.a. coroutines): 
split both tasks up into atomic steps, and switch back and forth between the two.

  FALSE

  TRUE