<?php // script to check for memory leaks require __DIR__ . '/../../../vendor/autoload.php'; $loop = new React\EventLoop\StreamSelectLoop(); class Zinger { public $i = 0; public function zing($n, $callback) { $this->i++; $callback($n * 100); } } $zinger = new Zinger(); $server = new DNode\DNode($loop, $zinger); $server->listen(7070); $loop->addPeriodicTimer(2, function () use($zinger) { $kmem = memory_get_usage(true) / 1024; echo "Run: {$zinger->i}\n"; echo "Memory: {$kmem} KiB\n"; }); $loop->run();
<?php require __DIR__ . '/../vendor/autoload.php'; $loop = new React\EventLoop\StreamSelectLoop(); $i = 0; $loop->addPeriodicTimer(0.001, function () use(&$i, $loop) { $i++; // $loop->addTimer(1, function ($signature) { // }); $loop->addPeriodicTimer(1, function ($signature) use($loop) { $loop->cancelTimer($signature); }); }); $loop->addPeriodicTimer(2, function () use(&$i) { $kmem = memory_get_usage(true) / 1024; echo "Run: {$i}\n"; echo "Memory: {$kmem} KiB\n"; }); $loop->run();
<?php // script to check for memory leaks require __DIR__ . '/../../../vendor/autoload.php'; $loop = new React\EventLoop\StreamSelectLoop(); $i = 0; $loop->addPeriodicTimer(0.001, function () use($loop, &$i) { $i++; $client = new DNode\DNode($loop); $client->connect(7070, function ($remote, $conn) { $remote->zing(33, function ($n) use($conn) { $conn->end(); }); }); }); $loop->addPeriodicTimer(2, function () use(&$i) { $kmem = memory_get_usage(true) / 1024; echo "Run: {$i}\n"; echo "Memory: {$kmem} KiB\n"; }); $loop->run();
<?php // script to test for mem leaks // You can test it using: // siege localhost:8080 require __DIR__ . '/../vendor/autoload.php'; $loop = new React\EventLoop\StreamSelectLoop(); $socket = new React\Socket\Server($loop); $http = new React\Http\Server($socket, $loop); $i = 0; $http->on('request', function ($request, $response) use(&$i) { $i++; $response->writeHead(); $response->end("Hello World!\n"); }); $loop->addPeriodicTimer(2, function () use(&$i) { $kmem = memory_get_usage(true) / 1024; echo "Request: {$i}\n"; echo "Memory: {$kmem} KiB\n"; }); $socket->listen(8080); $loop->run();