Overview

  • Asynchronous — executing a task one one thread while awaiting completion of another task currently being executed on another thread.
  • Concurrency — executing the same task on two threads. Non-deterministic (the order in which different pieces of the task are complete is not known).
  • Parallel — executing the same task on two threads. Deterministic (the order in which different pieces of the task are complete is known).