php共享内存shmop初探
先上读写程序:
<?php
/**
* SHMOP共享内存操作示例
* @author monkee
**/
$key = 0x4337b700;
$size = 4096;
$shmid = @shmop_open($key, "c", 0644, $size);
if($shmid === FALSE){
exit("shmop_open error!");
}
$data = "世界,你好!我将写入很多的数据,你能罩得住么?";
$length = shmop_write($shmid, pack("a*",$data), 0);
if($length === FALSE){
exit("shmop_write error!");
}
@shmop_close($shmid);
exit("succ");
?>读:
<?php
/**
* SHMOP共享内存操作示例
* @author monkee
**/
$key = 0x4337b700;
$size = 256;
$shmid = @shmop_open($key, "c", 0644, $size);
if($shmid === FALSE){
exit("shmop_open error!");
}
$data = unpack("a*", shmop_read($shmid, 0, 256));
if($data === FALSE){
exit("shmop_read error!");
}
@shmop_close($shmid);
exit($data[1]);
?>unix/linux命令查看:
key :共享内存的唯一的key值,共享内存通过该key来判断你读取的是哪一块内存。
shmid:当使用key来获取内存时,你获得的是这个id的值。它作为你操作内存块的标识。
owner:创建该共享内存块的用户
perms:该共享内存的读写权限,8禁止,可以是777,与文件的读写权限一致。
bytes:该内存块的大小
nattch:连接该内存块的进程数
status:当前状态,如:dest,即将删除等。
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: DB2内存使用过高优化
- 下一篇: DB2分页查询,结果集大小,ROW_NUMBER OVER
