Skip to content

Instantly share code, notes, and snippets.

@ondrejmirtes
Created February 7, 2016 10:10
Show Gist options
  • Save ondrejmirtes/ffd1be5be4062493c50a to your computer and use it in GitHub Desktop.
Save ondrejmirtes/ffd1be5be4062493c50a to your computer and use it in GitHub Desktop.
<?php declare(strict_types = 1);
class PromiseTimer
{
/** @var \React\EventLoop\LoopInterface */
private $loop;
public function __construct(\React\EventLoop\LoopInterface $loop)
{
$this->loop = $loop;
}
public function wait(int $time): \React\Promise\PromiseInterface
{
$deferred = new \React\Promise\Deferred();
$this->loop->addTimer($time, function () use ($deferred) {
$deferred->resolve();
});
return $deferred->promise();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment