عند استدعاء وظيفة getHeapStatistics الخاصة بوحدة v8 ، تكون خاصية heap_size_limit غير صحيحة لأحجام الذاكرة التي تم تعيينها على 4 جيجابايت. على وجه التحديد ، إذا قمت بتعيين max_old_space> = 4032 ، فإن heap_size_limit غير صحيح. لإعادة إنتاج:
العقدة - max_old_space_size = 3072
تتطلب ('v8'). getHeapStatistics (). heap_size_limit
3288334336
هذا هو ما تتوقعه ، لكن انظر إلى ما يفعله 4096:
العقدة - max_old_space_size = 4096
تتطلب ('v8'). getHeapStatistics (). heap_size_limit
67108864
64 ميغا ؟؟؟؟ هذا غير صحيح. بعد بعض المحاولات والخطأ ، تكون نقطة الانهيار السحرية هي 4032:
العقدة - max_old_space_size = 4032
تتطلب ('v8'). getHeapStatistics (). heap_size_limit
0
حجم الكومة صفر ، عند الضبط على 4092.
يحدث هذا أيضًا على نظام التشغيل Mac OS X 10.11.6 و Node v5.11.0
التعليق الأكثر فائدة
https://github.com/nodejs/node/pull/10186