Visualizar el uso de la memoria con y sin uso de generadores puede ayudar a comprender los beneficios de eficiencia. A continuación se muestra una comparación del uso de memoria en dos escenarios:
Digamos que tenemos una función simple que devuelve una matriz de números del 0 al 999,999. Esta función carga todos los datos en la memoria a la vez.
Cuando se llama a la función getNumbersArray:
| Memory Usage Without Generators | |------------------------------------------------------| | Start | * | | | ** | | | *** | | | **** | | | ***** | | | ****** | | | ******* | | ... | ******************************************| | End | ******************************************| |------------------------------------------------------|
Ahora usamos una función generadora para generar números uno a la vez.
Cuando se llama a la función del generador numberGenerator:
| Memory Usage With Generators | |------------------------------------------------------| | Start | * | | | * | | | * | | | * | | | * | | | * | | | * | | ... | * | | End | * | |------------------------------------------------------|
Los generadores brindan importantes beneficios en la eficiencia de la memoria, especialmente para conjuntos de datos grandes, al generar un elemento a la vez y mantener un uso bajo de memoria durante la ejecución del script.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3