protected function delay($interval, $data) { $seconds = floor($interval); $nanoseconds = ($interval - $seconds) * 1000000000; time_nanosleep($seconds, $nanoseconds); return Future\value($data); }