コード例 #1
0
ファイル: flatmap.php プロジェクト: domraider/rxnet
use Rxnet\Thread\RxThread;
use Rxnet\Zmq\RxZmq;
use Rxnet\Zmq\SocketWrapper;
require __DIR__ . "/../vendor/autoload.php";
function asString($value)
{
    if (is_array($value)) {
        return json_encode($value);
    }
    return (string) $value;
}
$createStdoutObserver = function ($prefix = '') {
    return new Rx\Observer\CallbackObserver(function ($value) use($prefix) {
        echo $prefix . "Next value: " . asString($value) . " : " . memory_get_usage(true) . "\n";
    }, function ($error) use($prefix) {
        echo $prefix . "Exception: " . $error->getMessage() . "\n";
    }, function () use($prefix) {
        echo $prefix . "Complete!\n";
    });
};
$loop = Factory::create();
$scheduler = new EventLoopScheduler($loop);
$i = 0;
$mem = function () use(&$i) {
    echo memory_get_usage(true) . "\n";
};
$scheduler->schedulePeriodic($mem, 10 * 1000, 10 * 1000);
$scheduler->schedulePeriodic(function () use(&$i) {
    $i++;
}, 0, 10);
$loop->run();