IPC :: MMA

Memoria compartida usando Ralf Engelschall's Mm Library
Descargar ahora

IPC :: MMA Clasificación y resumen

Anuncio publicitario

  • Rating:
  • Licencia:
  • Perl Artistic License
  • Precio:
  • FREE
  • Nombre del editor:
  • Craig MacKenna
  • Sitio web del editor:
  • http://search.cpan.org/~mackenna/

IPC :: MMA Etiquetas


IPC :: MMA Descripción

Memoria compartida usando Ralf Engelschall's Mm Library IPC :: MMA es un módulo PERL que permite compartir datos entre los procesos de Unix / Linux relacionados de una manera directa. Proporciona métodos para crear y destruir segmentos de memoria compartida y crear, acceso y mantener estructuras de datos dentro de los segmentos. Perl Scalars, matrices y hashes se pueden almacenar en memoria compartida. Esta versión de IPC :: MMA no almacenará referencias.IPC :: MMA es un superset del módulo IPC :: MM de ARTHUR CHOUNG, agregando matrices y permitiendo que se use cualquier escalar Perl como una tecla HASH / BTREE en lugar de solo Casadas C. IPC :: Las hashes MMA son como IPC :: mm btrees en que devuelven las teclas en orden ordenado en cada tecla, y las siguientes operaciones. IPC: IPC :: MMA Array puede almacenar datos de una de las seis formas, incluidos los escalares de propósito general, Enteros firmados o sin firmar, números de punto flotante / enteros grandes, cadenas / registros de longitud fija y booleanos en un bit por elemento de matriz. HSYNOPSIS Use IPC :: MMA; $ mm = mm_create (Memory_Size, path_to_lockfile); $ scalar = mm_make_scalar ($ mm); $ Array = mm_make_array ($ mm, tipo ]); $ hash = mm_make_hash ($ mm ); Tie $ TEEDSCALAR, 'IPC :: MMA :: SCALAR', $ SCALAR; Tie @TieDarray, 'IPC :: MMA :: Array', $ Array; TIE% TIEDHASH, 'IPC :: MMA :: hash', $ hash; mm_lock ($ mm, mm_lock_rd); mm_lock ($ mm, mm_lock_rw); mm_unlock ($ mm); Llamadas directas atadas equivalentes $ ok = mm_scalar_store ($ escalar, $ valor); $ tiedscalar = $ valor; $ valor = mm_scalar_fetch ($ escalar); $ valor = $ tiedescalar; mm_free_scalar ($ scalar) $ ok = mm_array_store ($ Array, $ índice, $ valor); $ TieDarray = $ valor; $ valor = mm_array_fetch ($ matriz, $ índice); $ valor = $ tiedarray ; $ entradas = mm_array_push ($ matriz, lista); $ Entries = Push @tiedArray, Lista; $ valor = mm_array_pop ($ matriz); $ valor = pop @tiedarray; $ valor = mm_array_shift ($ matriz); $ valor = Shift @tiedArray; $ entradas = mm_array_unshift ($ matry, lista); $ Entries = UNSHIPT @TieDarray, Lista; if (mm_array_exists ($ matry, $ index)) {...} Si (existe $ tiedarray ) {...} $ valor = mm_array_delete ($ Array, $ índice); $ valor = Eliminar $ tiedarray ; @ dels = mm_array_splice ($ Array, $ ix, $ Delct, lista); @ dels = splice @ tiedarray, $ ix, $ delct, lista; mm_array_clear ($ matry ); $ tiedarray = (); $ entradas = mm_array_fetchsize ($ Array) $ Entries = Scalar (@tieDarray) ($ Entradas, $ Shift, $ Tipo, $ Opt) = mm_array_status ($ matriz); mm_free_array ($ Array) $ ok = mm_hash_store ($ hash, $ clave, $ valor); $ tiedhash {$ KEY} = $ valor; $ valor = mm_hash_fetch ($ hash, clave clave); $ valor = $ tiedhash {$ key}; $ valor = mm_hash_delete ($ hash, clave clave); $ valor = Eliminar $ TIEDHASH {$ KEY}; Si (mm_hash_exists ($ hash, $ clave)) {...} Si (existe $ tiedhash {$ key}) {...} Mientras que (($ Key, $ Val) = mm_hash_Entry ($ hash, $ ix ++)) mientras (($ Key, $ Val) = cada% tiedhash) {...} {...} @Keys = Keys% TiedHash; @values ​​= valores% tiedhash; $ entradas = mm_hash_scalar ($ hash); $ entradas = escalar% tiedhash; mm_hash_clear ($ hash ); @tiedhash = (); $ KEY = MM_HASH_FIRST_KEY ($ ARRAY); $ KEY = MM_HASH_NEXT_KEY ($ ARRAY, TECLA DE $); mm_free_hash ($ hash); Requisitos: · Perl


IPC :: MMA Software relacionado