Im использует пул потоков для выполнения задач, которые в основном основаны на процессоре с небольшим количеством операций ввода-вывода, размера один больше, чем число процессоров.
Executors.newFixedThreadPool(Runtime.getRuntime().availableProcessors() + 1)
Предполагая случай простой программы, которая подчиняет все свои задачи этому исполнителю и делает мало что, я предполагаю, что пул потоков больше будет замедлять работу, потому что ОС придется времяпровождать, что cpus чаще имеет шанс дать каждому потоку в threadpool шанс бежать.
Правильно ли это, и если это так, то это реальная проблема или в основном теоретическая, то есть если бы я увеличил размер threadpool до 1000, я заметил бы огромную разницу.