Vodka, creating a new stream every time you have a task, are expensive. You must use the thread pool. Basically, this is that you have a pool of n threads, and you send jobs to it. If some thread is free, it will complete your task. If a thread executes with its task, it returns to the pool, waiting for some other task.
Try using ExecutorService to combine threads.
source
share