Heim >Backend-Entwicklung >PHP-Tutorial >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,即将删除等。
以上就介绍了 php共享内存shmop初探,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。