If you have blocking IO coroutines cannot help you much. You won't do 100k things in parallel, if you want to do 100k things in parallel with blocking IO, you need 100k threads, that's the nature of blocking IO. Coroutines can only help you if you have non-blocking stuff, because then things can be waited for without a thread.