Kotlin, Kotlin Coroutines, Android, Concurrency, Multithreading.
simply acts as a Mutex (A lock is designed to enforce a mutual exclusion concurrency control policy, and with a variety of possible methods there exist multiple unique implementations for different applications. See Mutual Exclusion) 2. Counting semaphore Semaphores that allow an arbitrary resource