Name : perl-IPC-Shareable
| |
Version : 1.06
| Vendor : obs://build_opensuse_org/devel:languages:perl
|
Release : 1.13
| Date : 2022-02-27 04:35:52
|
Group : Unspecified
| Source RPM : perl-IPC-Shareable-1.06-1.13.src.rpm
|
Size : 0.10 MB
| |
Packager : (none)
| |
Summary : Use shared memory backed variables across processes
|
Description :
IPC::Shareable allows you to tie a variable to shared memory making it easy to share the contents of that variable with other Perl processes and scripts.
Scalars, arrays, hashes and even objects can be tied. The variable being tied may contain arbitrarily complex data structures - including references to arrays, hashes of hashes, etc.
The association between variables in distinct processes is provided by GLUE (aka \"key\"). This is any arbitrary string or integer that serves as a common identifier for data across process space. Hence the statement:
tie my $scalar, \'IPC::Shareable\', { key => \'GLUE STRING\', create => 1 };
...in program one and the statement
tie my $variable, \'IPC::Shareable\', { key => \'GLUE STRING\' };
...in program two will create and bind \'$scalar\' the shared memory in program one and bind it to \'$variable\' in program two.
There is no pre-set limit to the number of processes that can bind to data; nor is there a pre-set limit to the complexity of the underlying data of the tied variables. The amount of data that can be shared within a single bound variable is limited by the system\'s maximum size for a shared memory segment (the exact value is system-dependent).
The bound data structures are all linearized (using Raphael Manfredi\'s Storable module or optionally JSON) before being slurped into shared memory. Upon retrieval, the original format of the data structure is recovered. Semaphore flags can be used for locking data between competing processes.
|
RPM found in directory: /packages/linux-pbone/ftp5.gwdg.de/pub/opensuse/repositories/devel:/languages:/perl:/CPAN-I/openSUSE_Tumbleweed/noarch |