Avatar ·

Erro java.lang.OutOfMemoryError: GC overhead limit exceeded — o que fazer?

Olá a todos! Sou um desenvolvedor Java iniciante e estou escrevendo uma pequena aplicação para processar logs. O programa lê um grande arquivo de texto (cerca de 500 MB), divide as linhas em palavras e coleta estatísticas — quantas vezes cada palavra aparece. Estou usando HashMap. Tudo funcionava normalmente em arquivos pequenos, mas quando executei com dados reais, após alguns minutos apareceu o erro: Exception in thread "main" java.lang.OutOfMemoryError: GC overhead limit exceeded Aqui está o código simplificado: ```java public class LogAnalyzer { public static void main(String[] args) throws IOException { Map wordCount = new HashMap<>(); BufferedReader reader = new BufferedReader(new FileReader("large_log.txt")); String line; while ((line = reader.readLine()) != null) { String[] words = line.split("\\s+"); for (String word : words) { wordCount.merge(word, 1, Integer::sum); } } } } ```