¿Qué son los parámetros -Xms y -Xmx al iniciar la JVM y cómo configurarlos correctamente?
¡Hola, colegas! Soy nuevo en Java y me encontré con un problema al ejecutar mi primera aplicación seria. Tengo un programa simple que procesa un archivo CSV grande (aproximadamente 500 MB). Escribí este código:
import java.io.*;
import java.util.*;
public class CsvProcessor {
public static void main(String[] args) throws Exception {
List<String> lines = new ArrayList<>();
try (BufferedReader br = new BufferedReader(new FileReader("data.csv"))) {
String line;
while ((line = br.readLine()) != null) {
lines.add(line);
}
}
System.out.println("Líneas cargadas: " + lines.size());
}
}
Cuando lo ejecuto con el comando `java CsvProcessor`, el programa falla con el error `OutOfMemoryError: Java heap space`. He oído que se deben usar los flags `-Xms` y `-Xmx`, pero no entiendo qué significan ni cómo configurarlos correctamente. En internet dicen que `-Xms`