共有メモリ関数とは? わかりやすく解説

Weblio 辞書 > 固有名詞の種類 > 製品 > コンピュータ > プログラミング言語 > PHP > 共有メモリ関数の意味・解説 

共有メモリ関数(shmop)

導入

shmop は、共有メモリセグメントを PHP から簡単に読み書きまたは作成、 削除することを可能にする一連の関数です。
注意: Windows 2000 より前のバージョンの Windows では共有メモリをサポートしていません。 Windows では、PHP が Apache や IIS などの web サーバモジュールとして稼動している場合にのみ shmop が動作します (CLI および CGI では動作しません)。
注意: PHP 4.0.3 では、以下の関数に接頭辞 shmop ではなく shm が付いていました。

要件

外部ライブラリを必要としません。

インストール手順

shmop を使用するには、--enable-shmopパラメータを configure に 指定して PHP をコンパイルする必要があります。

実行時設定

設定ディレクティブは定義されていません。

リソース型


定義済み定数

定数は定義されていません。

例 2089. 共有メモリ操作の概要
<?php
  
// システムID 0xff3を有する 100 バイトの共有メモリブロックを作成する
$shm_id = shmop_open(0xff3, "c", 0644, 100);
if (!$shm_id) {
   echo "共有メモリセグメントを作成できませんでした。\n";
}

// 共有メモリのブロック長を得る
$shm_size = shmop_size($shm_id);
echo "SHM ブロックサイズ: ".$shm_size. " が作成されました。\n";

// 共有メモリにテスト用の文字列を書き込んでみる
$shm_bytes_written = shmop_write($shm_id, "my shared memory block", 0);
if ($shm_bytes_written != strlen("my shared memory block")) {
   echo "データ全体を書き込めませんでした。\n";
}

// その文字列を再び読み込んでみる
$my_string = shmop_read($shm_id, 0, $shm_size);
if (!$my_string) {
   echo "共有メモリブロックから読み込めません。\n";
}
echo "共有メモリ内のデータは次のようになります: ".$my_string."\n";

// ブロックを削除し、共有メモリセグメントを閉じる
if (!shmop_delete($shm_id)) {
   echo "共有メモリブロックに削除用のマークを付けることができません。";
}
shmop_close($shm_id);
  
?>


目次

shmop_close — 共有メモリブロックを閉じる
shmop_delete — 共有メモリブロックを削除する
shmop_open — 共有メモリブロックを作成またはオープンする
shmop_read — 共有メモリブロックからデータを読み込む
shmop_size — 共有メモリブロックの大きさを得る
shmop_write — 共有メモリブロックにデータを書き込む




固有名詞の分類

このページでは「PHP関数リファレンス」から共有メモリ関数を検索した結果を表示しています。
Weblioに収録されているすべての辞書から共有メモリ関数を検索する場合は、下記のリンクをクリックしてください。
 全ての辞書から共有メモリ関数を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「共有メモリ関数」の関連用語

共有メモリ関数のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



共有メモリ関数のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
PHP Documentation GroupPHP Documentation Group
Copyright © 1997 - 2024 by the PHP Documentation Group.

©2024 GRAS Group, Inc.RSS