Java - Hilo calcula más lentamente

Estoy tratando de calcular más rápido mi programa. Pero usar hilo lo hace más lento. Aquí está el código que simplificó:

En esta matriz, tratando de sumar cada dígito. Por ejemplo: dígitos de la unidad = 3 + 6

List<String> myArr = new ArrayList<String>();
myArr.add("123");
myArr.add("456");

Cuando calcule así:

/* NORMAL USE */ 

long startTime1 = System.nanoTime();

int units=0; int tens=0; int hundreds=0;

for(int i=0; i < myArr.size(); i++) {
    units += Character.getNumericValue(myArr.get(i).charAt(2));
    tens += Character.getNumericValue(myArr.get(i).charAt(1));
    hundreds += Character.getNumericValue(myArr.get(i).charAt(0));
}

long endTime1 = System.nanoTime();
double estimatedTime1 = (endTime1 - startTime1)/1000000.0;

System.out.println(estimatedTime1 + " milliseconds");

Salida:

0.0285 milliseconds

Cuando calcule usando Thread:

/* USING THREAD */ 

ExecutorService pool = Executors.newFixedThreadPool(3);

long startTime2 = System.nanoTime();

pool.execute(new UnitsDigit(myArr));
pool.execute(new TensDigit(myArr));
pool.execute(new HundredsDigit(myArr));

pool.shutdown();

long endTime2 = System.nanoTime();
double estimatedTime2 = (endTime2 - startTime2)/1000000.0;

System.out.println(estimatedTime2 + " milliseconds");

Salida:

2.5015 milliseconds

¿Qué parte estoy haciendo mal? El hilo debería ser más rápido.

Respuesta 1

Hola gente, tengo un problema grave a mano, tengo un archivo zip en una máquina cliente y necesito cargar ese archivo zip en la máquina del servidor en una ubicación específica, la máquina cliente automáticamente ...

Tengo un campo RadioGroupFieldEditor en mi aplicación, este campo se agrega internamente a FieldEditorPreferencePage usando el método addField (). He agregado setPropertyChangeListener (nuevo ...

considere la siguiente captura de pantalla de mi excelSheet Ahora considere el siguiente código, que iterará cada fila, iterará cada celda e imprimirá el valor de la celda. public void excelData2 (int sheetNo) {Iterator & ...

El ejemplo es una clase de tarjeta con un método swap (). Se instancian dos objetos de la Tarjeta. El método los intercambia declarando una tercera variable de Tarjeta, pero sin instanciar un tercer objeto. El tercero ...