Używam węzła v0.12.4. Kiedy uruchomić następujący kod z node --max-old-space-size=8192 test.js
daje mi błąd FATAL ERROR: invalid array length Allocation failed - process out of memory
- nieprawidłowa długość tablicy
var a = new Array(200000000);
console.log(a.length);
Jednak w przypadku zmiany rozmiaru okna na 300000000 nie dostanę żadnego błędu. Co tu się dzieje? Czy jest jakiś argument z wiersza poleceń od --max-old-space-size
muszę zmienić?
Moje pierwsze przypuszczenie było takie, że pierwszy rozmiar był nieco mniejszy niż największa 32-bitowa liczba całkowita, a drugi nieco większy, ale jest o jeden za mało zer, aby to stanowiło problem. – Pointy
Co ciekawe, nie mogę odtworzyć tego w wersji v0.10. v0.11 segfaults. – fny
Być może istotne: [Limit pamięci sterty Node.js dla pojedynczego obiektu] (http://stackoverflow.com/questions/25231808/node-js-heap-memory-limit-for-single-object) – jfriend00