Concurrency involves multi-threading, coroutine, lock and atomic operations.
First, explain how process, thread and coroutine work and are implemented in different operating systems and languages.