function run() { try { $this->dns->on('query', xcallable($this, 'onQueryCallback')); $this->dns->run(); } catch (\Hoa\Socket\Exception $e) { throw new \InvalidArgumentException($e->getMessage()); } }