php实现共享内存进程通信函数之shm-php教程

资源魔 35 0
后面引见了php完成同享内存的一个函数shmop,也使用到了名目中,不外shmop有局限性,那就是只支持字符串类型的;sem通过我的测试,是夹杂型,支持数组类型,能够间接存储,间接猎取,少了过剩的步骤格局转换。不外sem有巨细限度,shmop能够设置很年夜很年夜很年夜~~~不外也能够再php.ini修正相干设置装备摆设。

<?php
$key = 0x4337b124;  
$shar_key = 1;
// 创立一个同享内存
$shm_id = shm_attach($key, 1024, 0666); // resource type
if ($shm_id === false) {
    die('Unable to create the shared memory segment' . PHP_EOL);
}
//设置一个值
shm_put_var($shm_id, $shar_key, 'test');
//删除了一个key
shm_remove_var($shm_id, $shar_key);
//猎取一个值
$value = shm_get_var($shm_id,  $shar_key);
var_dump($value);
//检测一个key能否存正在
var_dump(shm_has_var($shm_id,  $shar_key));
//从零碎中移除了
shm_remove($shm_id);
//封闭以及同享内存的衔接
shm_detach($shm_id);

留意:$shar_key 只能是 int 型的参数。

具体阐明

shm_attach

关上建设同享内存空间。

语法: int shm_attach(int key, int [memsize], int [perm]);

前往值: 整数

函数品种: 操作零碎与环境

内容阐明: 本函数用来关上或许建设同享内存空间。参数 key 为这局部的键。参数 memsize 可省略,示意所需最小的内存空间 (单元为 byte 位组),默许值正在 php3.ini 或 php.ini 中的 sysvshm.init_mem 设置装备摆设,若无设置装备摆设则为 10000 bytes。参数 perm 亦可省略,为该内存空间的应用权限,默许值为 666。前往值为同享内存的ID 值,可供顺序应用。

shm_detach

停止同享内存空间链接。

语法: int shm_detach(int shm_identifier);

前往值: 整数

函数品种: 操作零碎与环境

内容阐明: 本函数用来停止与同享内存空间的链接。参数 shm_identifier 即为欲中止局部的同享内存 ID 值。

shm_remove

肃清内存空间。

语法: int shm_remove(int shm_identifier);

前往值: 整数

函数品种: 操作零碎与环境

内容阐明: 本函数用来肃清同享内存空间的一切材料。参数 shm_identifier 即为欲中止局部的同享内存 ID 值。

shm_put_var

退出或更新内存空间中的变量。

语法: int shm_put_var(int shm_identifier, int variable_key, mixed variable);

前往值: 整数

函数品种: 操作零碎与环境

内容阐明: 本函数可用来添加或许修正内存空间中变量值。参数 shm_identifier 为欲添加修正的同享内存 ID 值。参数 variable_key 为欲添加修正的变量称号键。参数 variable 为变量的内容,变量的类型能够是倍准确数 (double)、整数 (integer)、字符串 (string) 或许是数组 (array)。

shm_get_var

获得内存空间中指定的变量。

语法: mixed shm_get_var(int shm_identifier, int variable_key);

前往值: 夹杂类型材料

函数品种: 操作零碎与环境

内容阐明: 本函数可用来获得内存空间中指定的变量值。参数 shm_identifier 为欲获得的同享内存 ID 值。参数 variable_key 为欲获得的变量称号键。前往值即为指定变量键的值。

shm_remove_var

删除了内存空间中指定的变量。

语法: int shm_remove_var(int id, int variable_key);

前往值: 整数

函数品种: 操作零碎与环境

内容阐明: 本函数可用来删除了内存空间中指定的变量值。参数 shm_identifier 为欲除了去的同享内存 ID 值。参数 variable_key 为欲删除了的变量称号键。

更多PHP常识,请拜访PHP中文网!

以上就是php完成同享内存过程通讯函数之shm的具体内容,更多请存眷资源魔其它相干文章!

标签: php php开发教程 php开发资料 php开发自学

抱歉,评论功能暂时关闭!