PHP code example of upscale / stdlib-object-lifecycle
1. Go to this page and download the library: Download upscale/stdlib-object-lifecycle library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
upscale / stdlib-object-lifecycle example snippets
$obj1 = new \stdClass();
$obj2 = new \stdClass();
$obj3 = new \stdClass();
// Circular references subject to garbage collection
$obj1->ref = $obj2;
$obj2->ref = $obj1;
$watcher = new \Upscale\Stdlib\Object\Lifecycle\Watcher();
$watcher->watch($obj1);
$watcher->watch([$obj2, $obj3]);
unset($obj1);
// Outputs 3 because of circular references
echo count($watcher->detectAliveObjects());
unset($obj2);
// Outputs 3 because of pending garbage collection
echo count($watcher->detectAliveObjects(false));
// Outputs 1 after forced garbage collection
echo count($watcher->detectAliveObjects());
unset($obj3);
// Outputs 0 and 3 respectively
echo count($watcher->detectAliveObjects());
echo count($watcher->detectGoneObjects());