Kotlin, Kotlin Coroutines, Android, Concurrency, Multithreading.
specify concurrency based on the use case. Take care while using Semaphore 🤨 If the semaphore is not handled properly, it may block the execution of the use case of the application let’s say the semaphore permit is not released. So make sure that whenever you’re using Semaphore, you’re handling it