/** * @param LoopInterface $loop * @param Messenger $messenger * @return Process */ public static function create(LoopInterface $loop, Messenger $messenger) { try { return new Process($loop, $messenger); } catch (\Exception $exeption) { $messenger->error(MessagesFactory::error(['message' => $exeption->getMessage(), 'code' => $exeption->getCode(), 'line' => $exeption->getLine(), 'file' => $exeption->getFile()])); $loop->addTimer(1, function () use($loop) { $loop->stop(); }); } }