O que são os parâmetros -Xms e -Xmx ao iniciar a JVM e como configurá-los corretamente?
Olá, colegas! Sou novo em Java e me deparei com um problema ao executar meu primeiro aplicativo sério. Tenho um programa simples que processa um grande arquivo CSV (cerca de 500 MB). Escrevi o seguinte 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("Linhas carregadas: " + lines.size());
}
}
Quando executo com o comando `java CsvProcessor`, o programa trava com o erro `OutOfMemoryError: Java heap space`. Ouvi dizer que preciso usar as flags `-Xms` e `-Xmx`, mas não entendo o que elas significam nem como configurá-las corretamente. Na internet, dizem que `-Xms`