code: public static function persistent(string $dsn, ...$params)
      {
          if (count($params) === 1) {
              $callback = $params[0];
          } else {
              [$attempts, $callback] = $params;
          }
  
          $wait = new static();
          $wait->with(new PdoWait());
          $wait->attempts($attempts ?? self::DEFAULT_ATTEMPTS);
          $wait->options([
              PDO::ATTR_PERSISTENT => true
          ]);
  
          $wait->start($dsn, $callback);
  
          return;
      }
docs: TODO refactor Connection Waiter.
  
  @param string $dsn
  @param array $params