동기(Synchronous)

싱글쓰레드

1 thread -> |<---A---->||<----B---------->||<------C----->|

멀티쓰레드

thread A -> |<---A---->|
                        \\
thread B ------------>   ->|<----B---------->|
                                              \\
thread C ---------------------------------->   ->|<------C----->|

비동기(Asynchronous)

싱글쓰레드

       A-Start ------------------------------------------ A-End
           | B-Start -----------------------------------------|--- B-End
           |    |      C-Start ------------------- C-End      |      |
           |    |       |                           |         |      |
           V    V       V                           V         V      V
1 thread->|<-A-|<--B---|<-C-|-A-|-C-|--A--|-B-|--C-->|---A---->|--B-->|

멀티쓰레드

 thread A ->     |<---A---->|
 thread B ----->     |<----B---------->|
 thread C --------->     |<------C--------->|