В вашем вопросе есть несколько ложных предположений, поэтому позвольте мне уточнить здесь:
- Многопоточность возможна даже на одноядерных процессорах. Выполнение просто разделяется во времени, поэтому в любой момент времени у вас есть 1 активный поток, однако общее выполнение потоков выполняется параллельно.
- Многопоточность не эквивалентна ускорению. Если многопоточное приложение наивно разработано, оно всегда медленнее однопоточного приложения в десятки или даже сотни раз.
- Загрузка из внешних сетей в 99% случаев не зависит от многопоточности. Возможно, стоит взглянуть на многодиапазонную загрузку HTTP, как это было реализовано в таких приложениях, как NetAnts, ReGet и других, начиная с эпохи коммутируемых модемов. Однако нет гарантии, что многодиапазонная загрузка может быть быстрее, чем обычная, из-за различных сетевых политик и задействованных серверов.
Итак, в конце концов. Вы определенно должны собрать показатели в своем приложении: что такое медленная операция? И затем перепроектируйте это, чтобы получить больше скорости.