JAVA - Error de falta de memoria al escribir celdas de Excel en jxl

Estoy usando JXL para escribir un archivo de Excel de 50000 filas y 30 columnas. Mi código se ve así:

for (int j = 0; j <countOfRows; j ++) {

myWritableSheet.addCell(new Label(0, j, myResultSet.getString(1), myWritableCellFormat));

myWritableSheet.addCell(new Label(1, j, myResultSet.getString(2), myWritableCellFormat));

.....

.....

}

Mientras escribe las celdas, el programa va más y más lento

y finalmente alrededor de la fila 25000 obtengo el siguiente error:

Excepción en el subproceso "Thread-3" java.lang.OutOfMemoryError: espacio de almacenamiento dinámico de Java en jxl.write.biff.WritableSheetImpl.getRowRecord (WritableSheetImpl.java:984) en jxl.write.biff.WritableSheetImpl.addCellI.vaja: WritableSheetImpl.addCellI ) en KLL.ConverterMainFrame $ exportToXLSBillRightsThread.run (ConverterMainFrame.java:6895)

Siempre es difícil en Java manejar la memoria.

En este caso parece ser el problema de jxl.

¿Hay alguna manera de escribir el archivo, borrar la memoria y continuar escribiendo celdas cada 1000 celdas?

¿Sería una buena idea o qué otra cosa propondría como solución?

Respuestas a la pregunta(2)

Su respuesta a la pregunta