2.1.5 Thinking concurrently

Cards (10)

  • Concurrent thinking
    The process of completing more than one task at a given time
  • Concurrent thinking does not always mean you have to be working on multiple tasks at once
  • Concurrent thinking
    Involves giving 'slices' of your time to different tasks
  • Parts of a problem which are related can often be solved concurrently
  • Concurrent processing
    Not the same as parallel processing
  • Parallel processing
    Multiple processors are used to complete more than one task simultaneously
  • Concurrent processing
    Each task is given a slice of processor time to make it appear as if tasks are being completed simultaneously
  • In reality, tasks are executed sequentially in concurrent processing
  • Benefits of concurrent processing
    • The number of tasks completed in a given time is increased
    • Less time is wasted waiting for an input or user interaction, as other tasks can be completed in this time
  • Drawbacks of concurrent processing
    • Concurrent processing can take longer to complete when large numbers of users or tasks are involved as processes cannot be completed at once
    • There is an overhead in coordinating and switching between processes, which reduces program throughput
    • Not all tasks are suited to being broken up and performed concurrently