首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

shm_attach

(PHP 4, PHP 5, PHP 7)

shm_attach — Creates or open a shared memory segment

Description

代码语言:javascript
复制
resource shm_attach ( int $key [, int $memsize [, int $perm = 0666 ]] )

shm_attach() returns an id that can be used to access the System V shared memory with the given key, the first call creates the shared memory segment with memsize and the optional perm-bits perm.

A second call to shm_attach() for the same key will return a different shared memory identifier, but both identifiers access the same underlying shared memory. memsize and perm will be ignored.

Parameters

key

A numeric shared memory segment ID

memsize

The memory size. If not provided, default to the sysvshm.init_mem in the php.ini, otherwise 10000 bytes.

perm

The optional permission bits. Default to 0666.

Return Values

Returns a shared memory segment identifier.

Changelog

Version

Description

5.3.0

This function now returns a resource instead of an integer.

Notes

Note: This function used to return an integer value prior to PHP 5.3.0. To achieve the same value in a portable manner, the return value can be cast to an integer like: <?php //?Create?a?temporary?file?and?return?its?path $tmp?=?tempnam('/tmp',?'PHP'); //?Get?the?file?token?key $key?=?ftok($tmp,?'a'); //?Attach?the?SHM?resource,?notice?the?cast?afterwards $id?=?shm\_attach($key); if?($id?===?false)?{ ????die('Unable?to?create?the?shared?memory?segment'); } //?Cast?to?integer,?since?prior?to?PHP?5.3.0?the?resource?id? //?is?returned?which?can?be?exposed?when?casting?a?resource //?to?an?integer $id?=?(integer)?$id; ?>

See Also

  • shm_detach() - Disconnects from shared memory segment
  • ftok() - Convert a pathname and a project identifier to a System V IPC key

← sem_remove

shm_detach →

代码语言:txt
复制
 ? 1997–2017 The PHP Documentation Group

Licensed under the Creative Commons Attribution License v3.0 or later.

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com