Example #1
0
 public function testClose()
 {
     $c = new Client();
     $c->connect();
     $promise = $c->channel()->close();
     $this->assertInstanceOf("React\\Promise\\PromiseInterface", $promise);
     $promise->then(function () use($c) {
         $c->stop();
     });
     $c->run();
 }
Example #2
0
<?php

namespace Bunny;

require_once __DIR__ . "/../vendor/autoload.php";
$c = new Client();
$ch = $c->connect()->channel();
$ch->queueDeclare("bench_queue");
$ch->exchangeDeclare("bench_exchange");
$ch->queueBind("bench_queue", "bench_exchange");
$t = null;
$count = 0;
$ch->run(function (Message $msg, Channel $ch, Client $c) use(&$t, &$count) {
    if ($t === null) {
        $t = microtime(true);
    }
    if ($msg->content === "quit") {
        printf("Pid: %s, Count: %s, Time: %.4f\n", getmypid(), $count, microtime(true) - $t);
        $c->stop();
    } else {
        ++$count;
    }
}, "bench_queue", "", false, true);
$c->disconnect();