|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
Patchessysvshm.diff (last revision 2010-10-26 19:19 UTC by marc-bennewitz at arcor dot de)Pull RequestsHistoryAllCommentsChangesGit/SVN commits
[2011-08-03 06:15 UTC] marc-bennewitz at arcor dot de
[2021-09-08 17:00 UTC] cmb@php.net
-Status: Open
+Status: Feedback
-Assigned To:
+Assigned To: cmb
[2021-09-08 17:00 UTC] cmb@php.net
[2021-09-19 04:22 UTC] php-bugs at lists dot php dot net
|
|||||||||||||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Oct 25 00:00:02 2025 UTC |
Description: ------------ Adding function to get total size of memory and to get free size of memory of the opened shm segment. Test script: --------------- From test script: // test errors var_dump(shm_stat()); var_dump(shm_stat(1)); var_dump(shm_stat("")); // open shm segment $key = ftok(dirname(__FILE__)."/008.phpt", 't'); $shmId = shm_attach($key, 1024); var_dump($shmId); // first stat call var_dump(shm_stat($shmId)); // write data + stat var_dump(shm_put_var($shmId, 10, '10')); var_dump(shm_put_var($shmId, 20, '20')); var_dump(shm_put_var($shmId, 30, '30')); var_dump(shm_stat($shmId)); // remove data + stat var_dump(shm_remove_var($shmId, 20)); var_dump(shm_stat($shmId)); // re-open shm segment with different size + stat var_dump(shm_detach($shmId)); $shmId = shm_attach($key, 10240); var_dump($shmId); var_dump(shm_stat($shmId)); // remove shm segment + stat var_dump(shm_remove($shmId)); var_dump(shm_stat($shmId)); echo "Done\n"; Expected result: ---------------- Warning: shm_stat() expects exactly 1 parameter, 0 given in %s on line %d bool(false) Warning: shm_stat() expects parameter 1 to be resource, integer given in %s on line %d bool(false) Warning: shm_stat() expects parameter 1 to be resource, string given in %s on line %d bool(false) resource(%d) of type (sysvshm) array(2) { ["total"]=> int(1024) ["free"]=> int(%d) } bool(true) bool(true) bool(true) array(2) { ["total"]=> int(1024) ["free"]=> int(%d) } bool(true) array(2) { ["total"]=> int(1024) ["free"]=> int(%d) } bool(true) resource(%d) of type (sysvshm) array(2) { ["total"]=> int(1024) ["free"]=> int(%d) } bool(true) array(2) { ["total"]=> int(1024) ["free"]=> int(%d) } Done