Я повторил ваш тест и подтвердил ваши наблюдения: я просто думаю, что установка службы Executor имеет свою стоимость,
Я провел еще несколько тестов на ноутбуке с 8 ядрами и даже увеличил все массивы в десять раз, но стандартная версия по-прежнему работает быстрее.
Увеличив еще один коэффициент в десять (так что размеры составляют порядка миллионов), я, наконец, заставляю Исполнителя работать быстрее.
Таким образом, ясно, сколько данных вам нужно обработать, в некоторых случаях не стоит использовать Executor. (Конечно, я прокомментировал распечатку отсортированных массивов).
Кроме того, добавьте, что использование разных размеров массивов делает разницу менее очевидной: в начале вы сортируете 4 массива параллельно, через 1/3 времени вы завершаете 2 сортировки, data1 и data3, и продолжаете обрабатывать две другие параллельно, data2 и data4, а последнюю треть времени вы обрабатываете в одном массиве, data4. Если вы сортируете идентичные массивы, выигрыш в скорости будет более очевидным.
В заключение позвольте мне добавить, что измеренное время сильно колеблется, вы должны повторить его несколько раз и в среднем, чтобы получить стабильное число и выполнить надлежащий тест.
При размере нескольких сотен тысяч на моем ноутбуке время колеблется на 50%.