inhere / shm
This package is abandoned and no longer maintained.
The author suggests using the php-comp/shm package instead.
shared memory library of the php
v1.1.2
2018-11-22 09:07 UTC
Requires
- php: >7.0.0
- php-comp/lock: ~1.0
Suggests
- inhere/console: a lightweight php console application library.
This package is auto-updated.
Last update: 2022-02-01 13:07:35 UTC
README
php 共享内存操作的实现。基于
- sysvshm扩展:实现system v方式的共享内存
linux/mac
- shmop扩展:共享内存操作扩展
linux/mac/windows
功能:
- 实现了共享内存的
写入
读取
删除
释放
基本操作 - 扩展的类
ShmMap
实现了基于共享内存的数组结构(数组方式操作、pop/push、迭代器,读/取都会自动加锁)。
安装
- composer
{ "require": { "php-comp/shm": "dev-master" } }
- 直接拉取
git clone https://github.com/php-comp/shared-memory.git // github
使用
use PhpComp\Shm\ShmFactory; use PhpComp\Shm\ShmMap; $shm = ShmFactory::make([ 'key' => 1, 'size' => 512 ]); $shm->write('data string'); $ret = $shm->read(); var_dump($ret); $shmAry = new ShmMap([ 'key' => 2, 'size' => 512 ]); $shmAry['one'] = 'val1'; $shmAry['two'] = 'val2'; $shmAry->set('three', 'val3'); var_dump($shmAry['three'], $shmAry->getMap()); unset($shmAry['two']); var_dump($shmAry->getMap());