DATOS :: ReutilizarCompartir valores constantes con datos :: Alias | |
Descargar ahora |
DATOS :: Reutilizar Clasificación y resumen
Anuncio publicitario
- Licencia:
- Perl Artistic License
- Precio:
- FREE
- Nombre del editor:
- Elizabeth Mattijsen
- Sitio web del editor:
- http://search.cpan.org/~elizabeth/
DATOS :: Reutilizar Etiquetas
DATOS :: Reutilizar Descripción
Comparte valores constantes con datos :: Alias Por defecto, PERL no comparte valores literales (0, 'Foo', "Bar"). Esto se debe a que una vez que se almacena un valor literal en variable (un contenedor), se puede cambiar el contenido de ese contenedor. Incluso si tal contenedor está marcado "solo lectura" (por ejemplo, con un módulo como Scalar :: Readonly), no hará que los valores se compartan. Por lo que cada aparición del mismo valor literal tiene su propia ubicación de memoria, incluso si está marcada internamente como read-only.in un mundo ideal, PERL mantendría una copia única de cada valor literal (contenedor) y tendrá todas las ocurrencias en el punto de memoria al mismo contenedor. Una vez que se realiza un intento para cambiar el contenedor, lo haría, hacer una copia del contenedor y poner el nuevo valor allí. Este principio generalmente se conoce como copia en escritura (vaca). Desafortunadamente, PERL no tiene esto a esto en los datos :: Módulo de alias que le permite compartir contenedores entre diferentes variables (entre otras cosas). Pero aún no le permite tener valores literales compartir las mismas ubicaciones de memoria. Data: austriega es un módulo PERL que le permite tener valores fácilmente literales y de solo lectura. Comparte la misma dirección de memoria. Lo que puede ahorrarle mucha memoria cuando está trabajando con grandes estructuras de datos con valores similares. Lo que es especialmente agradable en un entorno MOD_PERL, donde el uso de la memoria de los procesos persistentes es uno de los temas principales ... de curso, no se producirán ahorros de memoria para los valores literales que solo ocurren una vez. Por lo tanto, es importante que utilice la funcionalidad de este módulo con prudencia, solo en valores que espera que se duplique al menos dos veces. HSYNOPSIS Use los datos :: Reutilizar qw (fijación); Fijar mi @array => (0, 1, 2, 3); # Inicializar y fijar mi @filled_array = (0, 1, 2, 3); fijar @filled_array; # Fijar los valores existentes Imprimir \ $ Array == \ $ Llen_Array ? "Compartir memoria \ N": "No comparta la memoria \ n"; Fijar mi% hash => (cero => 0, uno => 1, dos => 2, tres => 3); mi% llenado_hash = (cero => 0, uno => 1, dos => 2, tres => 3); fijación% llenado_hash; Imprimir \ $ hash {cero} == \ $ llink_hash {cero}? "Compartir memoria \ N": "No comparta la memoria \ n"; Usar datos :: Reutilizar QW (Reutilizar); reutilizar mi LISTREF = ; reutilizar mi $ hashref = {cero => 0, uno => 1, dos => 2, tres => 3}; Imprimir \ $ LISTREF -> == \ $ Hashref -> {cero}? "Compartir memoria \ N": "No comparta la memoria \ n"; Usar datos :: Alias QW (alias); Usar datos :: Reutilizar QW (Reutilizar); alias mi @foo = reutilizar (0, 1, 2, 3); Imprimir \ $ foo == \ $ hashref -> {cero}? "Compartir memoria \ N": "No comparta la memoria \ n"; Utilice los datos :: Reutilizar QW (Difusión); Difundir mi% Spread_Hash => Undef, QW (Foo Bar Baz); Imprimir \ $ Spread_Hash {foo} == \ $ Spread_Hash {Bar}? "Compartir memoria \ N": "No comparta la memoria \ n"; Difunde mi @spread_array => 1, 0 .. 3; Imprimir \ $ Spread_Array == \ $ Spread_Array ? "Compartir memoria \ N": "No comparta la memoria \ n"; Usar datos :: Reutilizar QW (Olvídate); olvidar(); # Memoria gratuita utilizada para el seguimiento de los valores constantes Requisitos: · Perl
DATOS :: Reutilizar Software relacionado
Texto :: SolucionadoMultilina
Datos de texto de análisis formateados en columnas separadas de espacio opcionaly en varias líneas ...
141
filtrante
permite que las pruebas de la unidad se diseñen para los programas de línea de comandos ...
125
Purecm profesional
Purecm es una herramienta de seguimiento de control de versión integrada y defectos. ...
61