Java heap space

0

Witam, tym razem mam taki problem: Program się kompiluje, ale gdy jako rozmiar tablicy

int[][] topology = new int [size][size];

wprowadzę zbyt dużą wartość size=1000 (około), wyskakuje mi błąd:

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space

Potrzebuję, by program działał przy deklaracji tablicy tak do size=5000 elementów.
Jeżeli nikt nie ma pomysłu, to może wrzucę cały program, ale jest trochę długi więc nie chce tego robić.

0

Zwyczajnie nie starcza pamieci. Java domyslnie alokuje tylko czesc ramu dostepnego fizycznie (np w tzw trybie klient zdaje sie 64 mb), widocznie Twoj program potrzebuje wiecej, zatem musisz to zmienic. Sluzy do tego switch Xmx, jak uzywac jest w dokumentacji albo np tutaj: http://javahowto.blogspot.com/2006/06/6-common-errors-in-setting-java-heap.html.
Jedna sprawa - zastanow sie czy naprawde musisz taka tablice alokowac od razu. Np jak ja pisze jakies programiki dla siebie, jakies male bzdurki, to heap space nigdy nie jest z reguly problemem. Ale zalezy to oczywiscie od specyfiki danej aplikacji.
Pozdro.

1 użytkowników online, w tym zalogowanych: 0, gości: 1