docs: def _create_worker(self, method, *args, **kwargs):
          """Create a new worker instance."""
          thread = QThread()
          worker = RequestsDownloadWorker(method, args, kwargs)
          worker.moveToThread(thread)
          worker.sig_finished.connect(self._start)
          self._sig_download_finished.connect(worker.sig_download_finished)
          self._sig_download_progress.connect(worker.sig_download_progress)
          worker.sig_finished.connect(thread.quit)
          thread.started.connect(worker.start)
          self._queue.append(thread)
          self._threads.append(thread)
          self._workers.append(worker)
          self._start()
          return worker