Utilisation simple

Exemple #1 Introduction à la mémoire partagée

<?php

// Crée 100 octets de mémoire partagée avec un identifiant système "0xff3"
$shm_id = shmop_open(0xff3, "c", 0644, 100);
if(!
$shm_id) {
echo
"Impossible de créer la mémoire partagée\n";
}

// Lire la taille de la mémoire partagée
$shm_size = shmop_size($shm_id);
echo
"Un bloc de SHM de taille " . $shm_size . " a été créé.\n";

// Ecriture d'une chaîne de test dans ce segment
$shm_bytes_written = shmop_write($shm_id, "Mon bloc de mémoire partagée", 0);
if (
$shm_bytes_written != strlen("Mon bloc de mémoire partagée")) {
echo
"Impossible d'écrire toutes les données en mémoire\n";
}

// Lecture du segment
$my_string = shmop_read($shm_id, 0, $shm_size);
if(!
$my_string) {
echo
"Impossible de lire toutes les données en mémoire\n";
}
echo
"Les données mises en mémoire partagées sont : " . $my_string . "\n";

// Maintenant, effaçons le bloc, et fermons le segment de mémoire
if(!shmop_delete($shm_id)) {
echo
"Impossible d'effacer le segment de mémoire";
}
shmop_close($shm_id);

?>
To Top