Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

369
Visualizações
¿Por qué v8/nodejs no puede asignar una matriz de tamaño máximo si hay suficiente memoria?

Soy consciente de que la longitud máxima de una matriz de JavaScript es 2 ^ 32-1, pero independientemente de la cantidad de memoria que permita, seguirá sin poder asignarse. ¿Qué está sucediendo? Reproducción de una línea:

 node --max-old-space-size=100000 -e "console.log(v8.getHeapStatistics().total_available_size);Array.from({ length: Math.pow(2, 32)-1 })"

Para mayor claridad, el ejemplo anterior expone 100 GB a v8, que se confirma a través total_available_size . 8 GB pueden ser suficientes para probar esta operación, ya que la mayoría de las personas no tendrán 100 GB, pero fallará de todos modos. ¿Es esto un error en V8?

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

(Desarrollador V8 aquí.)

No, no es un error, solo un límite definido por la implementación. V8 tiene un límite interno de ~1 GB para cualquier objeto de montón individual. A 4 bytes (con compresión de puntero) por elemento, eso significa un máximo de ~256 millones de elementos por matriz.

Hay muchos otros límites definidos por la implementación, por ejemplo, para la longitud de TypedArray, la longitud de la cadena, el tamaño de BigInt, la profundidad de recursión, la cantidad de parámetros por función, la cantidad de entradas en un mapa, etc. Prácticamente todo tiene un límite, incluso si JavaScript spec no lo menciona explícitamente, o menciona un límite teórico que es diferente de los límites de implementación (que implícitamente se supone que existen).

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda